2009-12-07 117 views
3

我有很多时间戳列,我需要使用混合时区。用户时区设置为我用于前端的语言,因此我需要MySQL从select *返回unix时间戳。从MySQL时间戳列中获取数据时,有没有办法关闭自动格式化?关闭MySQL中的时间戳格式

回答

4

YYYY-MM-DD HH:MM:SS是MySQL中时间戳列的默认表示。我不相信你可以在全球范围内改变这一点。

两个选项:

  1. 而不是做一个SELECT *的,做SELECT *, UNIX_TIMESTAMP(your_timestamp_column) AS your_timestamp,这将是Unix格式的your_timestamp列添加到结果。

  2. 为每个执行相同操作的表制作视图(CREATE VIEW

    CREATE VIEW your_view AS 
        SELECT *, UNIX_TIMESTAMP(your_timestamp_column) AS your_unix_timestamp 
        FROM your_table; 
    

    然后,你可以做SELECT * FROM your_view;,让你的Unix时间戳,无所添加到您的查询。

参考:UNIX_TIMESTAMP

+0

+1:对于比我快,并提出意见 – 2009-12-07 19:22:15

+0

感谢您的答复。我认为这将是最好的。 – Kyle 2009-12-07 19:27:05