TIMEDIFF(endDate, startDate)
saídas no formato DateTime, tão simples que marcam a hora e dividem por (60 * 60) SELECT (UNIX_TIMESTAMP(TIMEDIFF(endDate, startDate))/(60*60)) AS hours_difference
FROM tasks
Editar: Como alternativa,TimestampDiff também pode fornecer uma solução válida de maneira mais elegante, fornecendo seu exemplo:
SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
E sua solução pode ser:
SELECT TIMESTAMPDIFF(HOUR, startDate, endDate) AS hours_different
FROM tasks