gpt4 book ai didi

mysql - 如何在 MySql 选择查询中将 UTC 日期转换为本地时区

转载 作者:IT老高 更新时间:2023-10-28 12:57:04 24 4
gpt4 key购买 nike

我在 MySql 数据库的一个查询中使用此 Where 条件。我的问题是我的表中有一个显示时间列,但该表列以 UTC 时间显示数据。我想将该显示时间列转换为本地时区。所以我如何从查询本身提供这个设施。

我已经仔细检查了这些东西,因此我知道像 SELECT CONVERT_TZ() 这样的东西可以解决这个问题。但它不适合我。

这是我的查询,我需要将显示时间转换为本地时区...所以有人可以指导我吗?

WHERE displaytime >= '2012-12-01 00:00:00'
AND displaytime <='2013-02-22 23:59:59'
AND ct.organizationId IN (
SELECT t.organizationId
FROM organization_ AS t
JOIN organization_ AS p ON t.treePath LIKE CONCAT(p.treePath, '%')
WHERE p.organizationId = 10707

enter image description here样本数据

enter image description here

最佳答案

SELECT CONVERT_TZ() will work for that.but its not working for me.

为什么,你得到了什么错误?

SELECT CONVERT_TZ(displaytime,'GMT','MET');

如果您的列类型是时间戳或日期,则应该可以使用

http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_convert-tz

测试其工作原理:

SELECT CONVERT_TZ(a_ad_display.displaytime,'+00:00','+04:00');

检查您的时区表

SELECT * FROM mysql.time_zone;
SELECT * FROM mysql.time_zone_name;

http://dev.mysql.com/doc/refman/5.5/en/time-zone-support.html

如果这些表为空,则说明您尚未初始化时区表。根据上面的链接,您可以使用 mysql_tzinfo_to_sql 程序来加载时区表。请试试这个

shell> mysql_tzinfo_to_sql /usr/share/zoneinfo

或者如果不工作阅读更多:http://dev.mysql.com/doc/refman/5.5/en/mysql-tzinfo-to-sql.html

关于mysql - 如何在 MySql 选择查询中将 UTC 日期转换为本地时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15017799/

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