首页 >数据库 >mysql教程 >如何在 MySQL 选择查询中将 UTC 日期转换为本地时区?

如何在 MySQL 选择查询中将 UTC 日期转换为本地时区?

Barbara Streisand
Barbara Streisand原创
2024-11-17 14:47:01688浏览

How to Convert UTC Date to Local Time Zone in MySQL Select Query?

在 MySQL 选择查询中将 UTC 日期转换为本地时区

问题

A MySQL查询需要将存储 UTC 时间戳的“displaytime”列转换为本地时区。但是,使用 CONVERT_TZ() 函数不会产生预期的结果。

答案

1。验证错误消息

检查错误消息以确定 CONVERT_TZ() 不起作用的原因。

2.确保兼容的列类型

CONVERT_TZ() 要求输入列是时间戳或日期数据类型。检查“displaytime”列的数据类型。

3.使用正确的语法

CONVERT_TZ() 的正确语法是:

CONVERT_TZ(timestamp, source_timezone, destination_timezone)

4。用法示例

例如,要将显示时间从 UTC 转换为美国东部时间 (-05:00 GMT),请使用:

SELECT CONVERT_TZ(displaytime, 'UTC', 'America/New_York');

5。检查时区表

确保 MySQL 时区表已正确初始化。运行以下命令进行检查:

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

6.加载时区数据

如果时区表为空,请使用mysql_tzinfo_to_sql程序加载它们:

mysql_tzinfo_to_sql /usr/share/zoneinfo

以上是如何在 MySQL 选择查询中将 UTC 日期转换为本地时区?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn