TIMEDIFF(endDate, startDate)
Salidas en formato DateTime, tan planas que marcan la hora y dividen por (60*60)
SELECT (UNIX_TIMESTAMP(TIMEDIFF(endDate, startDate))/(60*60)) AS hours_difference
FROM tasks
Editar: Alternativamente, TimestampDiff también puede proporcionar una solución válida de una manera más elegante proporcionando su ejemplo:
SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
Y tu solución puede ser:
SELECT TIMESTAMPDIFF(HOUR, startDate, endDate) AS hours_different
FROM tasks