Como han dicho otros, las indicaciones de fecha y hora pueden representar un rango menor de fechas (de 1970 a 2038). Sin embargo, las marcas de tiempo miden la cantidad de segundos transcurridos desde Unix Epoch (1970-01-01 00:00:00 UTC), lo que las hace independientes de la zona horaria, mientras que DATETIME almacena una fecha y una hora sin zona horaria. En otras palabras, las marcas de tiempo referencian inequívocamente un punto particular en el tiempo, mientras que el punto exacto en el tiempo al que se refiere DATETIME requiere una zona horaria (que no se almacena en un campo DATETIME). Para ver por qué esto puede importar, considere lo que sucede si cambiamos nuestra zona horaria.
Digamos que queremos almacenar el datetime 2010-03-27 12:00 UTC. Si almacenamos esto y lo recuperamos usando una marca de tiempo o DATETIME, entonces usualmente no parece haber diferencia. Sin embargo, si el servidor ahora cambia para que la zona horaria local sea UTC + 01, entonces obtenemos dos resultados diferentes si sacamos la fecha y hora.
Si hubiéramos configurado el campo a DATETIME, reportaría el datetime como 2010-03-27 12:00, a pesar del cambio en la zona horaria. Si hubiéramos configurado el campo con una marca de tiempo, la fecha sería reportada como 2010-03-27 11:00. Esto no es un problema con ninguno de los tipos de datos, es solo el resultado del hecho de que almacenan información ligeramente diferente.
Similar: http://stackoverflow.com/questions/409286/datetime-vs-timestamp –