在MySQL中关闭时间戳格式

在MySQL中关闭时间戳格式,mysql,Mysql,我有许多时间戳列,需要用于混合时区。用户时区是用我在前端使用的语言设置的,因此我需要MySQL从select*返回unix时间戳。在从MySQL时间戳列获取数据时,有没有办法关闭自动格式化功能?YYYY-MM-DD HH:MM:SS是MySQL中时间戳列的默认表示形式。我不相信你能在全球范围内改变这一点 两种选择: 不要执行SELECT*,而是执行SELECT*,UNIX\u TIMESTAMP(您的\u TIMESTAMP\u列)作为您的\u TIMESTAMP,这将在结果中添加一个UNIX格

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

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

两种选择:

  • 不要执行
    SELECT*
    ,而是执行
    SELECT*,UNIX\u TIMESTAMP(您的\u TIMESTAMP\u列)作为您的\u TIMESTAMP
    ,这将在结果中添加一个UNIX格式的
    您的\u TIMESTAMP

  • 为每个做相同事情的表创建一个视图(),例如

    CREATE VIEW your_view AS
      SELECT *, UNIX_TIMESTAMP(your_timestamp_column) AS your_unix_timestamp
      FROM your_table;
    
    然后您可以从您的视图中执行
    选择*
    并获取Unix时间戳,而无需向查询中添加任何内容

  • 参考:是

    您可以在UNIX_TIMESTAMP函数中包装该字段,如下所示:

    从您的\u表中选择UNIX\u TIMESTAMP(您的\u TIMESTAMP\u列)

    有关此函数以及其他mysql数据和时间函数的更多信息,请参阅: