Я не думаю, что принятый ответ является хорошим универсальным решением!
Это связано с тем, что функция UNIX_TIMESTAMP () не работает для дат DATE до 1970-01-01 (и для дат в далеком будущем с использованием 32-битных целых чисел) Это может легко произойти в день рождения многих живых людей.
Лучшее решение:
SELECT TIMESTAMPDIFF(SECOND, '2010-11-29 13:13:55', '2010-11-29 13:16:55')
Который можно изменить так, чтобы он возвращал DAY YEAR MONTH HOUR и MINUTE!