TIMEDIFF(endDate, startDate)
dane wyjściowe w formacie DateTime, tak płaskim, że do oznaczenia czasu i podziału przez (60*60)
SELECT (UNIX_TIMESTAMP(TIMEDIFF(endDate, startDate))/(60*60)) AS hours_difference
FROM tasks
Edytuj: Alternatywnie TimestampDiff może również zapewnić prawidłowe rozwiązanie w bardziej elegancki sposób, podając swój przykład:
SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
A Twoim rozwiązaniem może być:
SELECT TIMESTAMPDIFF(HOUR, startDate, endDate) AS hours_different
FROM tasks