Eu não acho que a resposta aceita seja uma boa solução universal!
Isso ocorre porque a função UNIX_TIMESTAMP() falha para DATEs anteriores a 1970-01-01 (e para datas em um futuro distante usando inteiros de 32 bits). Isso pode acontecer facilmente no dia do nascimento de muitas pessoas vivas.
Uma solução melhor é:
SELECT TIMESTAMPDIFF(SECOND, '2010-11-29 13:13:55', '2010-11-29 13:16:55')
Que pode ser modificado para retornar DAY YEAR MONTH HOUR e MINUTE também!