gpt4 book ai didi

mysql - 创建表时时间字段发生变化

转载 作者:行者123 更新时间:2023-11-29 20:07:23 24 4
gpt4 key购买 nike

我有两个表,它们都有一个时间字段。我试图从这两个表中获取数据,当我运行查询时,结果很好(我正在寻找的)。

Start_time            Break_time                Finish_time
2016-01-01 01:00:00 2016-01-01 01:05:51 2016-01-01 01:05:59
2016-01-01 01:00:00 2016-01-01 01:05:51 2016-01-01 01:06:12
2016-01-01 01:00:00 2016-01-01 01:06:26 2016-01-01 01:06:26
2016-01-01 01:00:00 2016-01-01 01:06:21 2016-01-01 01:06:35
2016-01-01 01:00:00 2016-01-01 01:06:49 2016-01-01 01:06:59
2016-01-01 01:00:00 2016-01-01 01:06:51 2016-01-01 01:07:24
2016-04-14 12:03:00 2016-04-14 12:27:39 2016-04-14 12:28:04
2016-04-14 12:03:00 2016-04-14 12:27:28 2016-04-14 12:28:07
2016-04-14 12:03:00 2016-04-14 12:27:38 2016-04-14 12:28:07
2016-04-14 11:30:00 2016-04-14 12:25:22 2016-04-14 12:28:08
2016-04-14 12:03:00 2016-04-14 12:27:57 2016-04-14 12:28:08

但是,当我尝试创建一个表以便将结果输入时,时间完全改变了。

Start_time            Break_time                Finish_time
2016-01-01 01:00:00 2016-01-01 01:05:51 2016-01-01 01:05:59 01
2016-01-01 01:00:00 2016-01-01 01:05:51 2016-01-01 01:06:12 01
2016-01-01 01:00:00 2016-01-01 01:06:26 2016-01-01 01:06:26 01
2016-01-01 01:00:00 2016-01-01 01:06:21 2016-01-01 01:06:35 01
2016-01-01 01:00:00 2016-01-01 01:06:49 2016-01-01 01:06:59 01
2016-01-01 01:00:00 2016-01-01 01:06:51 2016-01-01 01:07:24 01
2016-01-01 01:00:00 2016-01-01 01:07:14 2016-01-01 01:07:27 01
2016-01-01 01:00:00 2016-01-01 01:06:26 2016-01-01 01:07:32 01
2016-01-01 01:00:00 2016-01-01 01:07:03 2016-01-01 01:07:49 01
2016-01-01 01:00:00 2016-01-01 01:07:51 2016-01-01 01:08:01 01
2016-01-01 01:00:00 2016-01-01 01:07:44 2016-01-01 01:08:07 01
2016-01-01 01:00:00 2016-01-01 01:07:47 2016-01-01 01:08:08 01
2016-01-01 01:00:00 2016-01-01 01:07:06 2016-01-01 01:08:31 01
2016-01-01 01:00:00 2016-01-01 01:08:25 2016-01-01 01:08:53 01

第一个表中的 Start_time 为 TIMESTAMP(Type)、CURRENT_TIMESTAMP(DEFAULT),更新为 CURRENT_TIMESTAMP(Extra)。在第二个表中,Break_time 和 Finish_time 均为 VARCHAR(TYPE)、NULL(Default)、None(Extra)。我认为这就是导致问题的原因,但不知道如何解决它。请问有什么想法吗?

最佳答案

MySQL 根据当前时区将您插入的时间转换为 UTC。它还会在选择时转换回当前状态。这是一个类似的问题。

How do I get the current time zone of MySQL?

但是您必须使用 DATETIME 字段作为 Break_time 和 Finish_time。插入时 MySQL 不会因为它们的类型而转换它们。

关于mysql - 创建表时时间字段发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40301484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com