Из руководства:
Примечание. Если вы используете UNIX_TIMESTAMP () и FROM_UNIXTIME () для преобразования
между значениями TIMESTAMP и Unix timestamp происходит преобразование
с потерями, потому что отображение не один-к-одному в обоих направлениях. За
Например, из-за соглашений об изменениях местного часового пояса, это
возможно для двух UNIX_TIMESTAMP () отобразить два значения TIMESTAMP на
та же самая метка времени Unix. FROM_UNIXTIME () отобразит это значение обратно
только одно из исходных значений TIMESTAMP.
См. здесь.
Если вы хотите использовать unix_timestamps без учета часовых поясов, вы можете рассчитать его самостоятельно.
В MySQL :
От метки времени до unixtime:
SELECT timestampdiff(second, '1970-01-01', yourTimestampColumnOrValue);
Другой способ
SELECT timestampadd(second, yourTimestampColumnOrValue, '1970-01-01');
Для SQL Server см. ссылку .