如何将“2017-03-24T11:12:04 + 08:00”等时间字符串转换为unix时间戳

时间:2018-03-14 12:03:47

标签: mysql

我知道unix_timestamp可以这样做,如下所示:

SELECT unix_timestamp('2017-03-24T11:12:04+08:00');

但是,设置time_zone:

SET time_zone='+0:00';   // the timestamp will be: 1490353924

set time_zone='+8:00';   // the timestamp will be: 1490325124

那么,如何获得始终为1490353924的时间戳?

就像MySQL数据类型TIMESTAMP所做的那样:无论time_zone是什么,秒数都不会改变,因为1970-01-01:00:00:00 utc +0:00之后总是没有改变。

select unix_timestamp(time_stamp_column) from `TABLE_TEST`;  // time_stamp_column is a column of talbe TABLE_TEST, and it's type is TIMESTAMP

1 个答案:

答案 0 :(得分:0)

您可以尝试使用此代码。

set @@global.time_zone = '+00:00';

set @@global.time_zone = '+8:00';