Si quieres sacar las horas, yo usaría TIMEDIFF, y luego trataría de recuperar los días a partir de las horas.
Código sql:
Ver originalSELECT TIMEDIFF( '1997-12-31 23:59:59', '1997-12-30 01:01:01' ) horas_minutos_segundos , FLOOR( HOUR( TIMEDIFF( '1997-12-31 23:59:59', '1997-12-30 01:01:01' ) ) /24 ) díAS, (
HOUR( TIMEDIFF( '1997-12-31 23:59:59', '1997-12-30 01:01:01' ) ) %24
)horas, TIME_FORMAT( TIMEDIFF( '1997-12-31 23:59:59', '1997-12-30 01:01:01' ) , "%i:%s" ) minutos_y_segundos
Observa el ejemplo, en el que primero obtenemos la resta, que la da en horas, minutos y segundos. Luego divido las horas por 24 para obtener los días y el resto sería el número de horas; finalmente, dejo los minutos y segundos.
Tal vez te sirva.
Mira la sintaxis en ver original