MySQL如何获取北京日期
在MySQL中获取北京日期,可以通过结合UTC时间与时区转换来实现,核心方法是使用CONVERT_TZ()函数或设置会话时区为'+08:00'后直接调用NOW(),以下是具体操作和示例:
使用CONVERT_TZ()函数进行时区转换
若数据库存储的是UTC时间,可通过以下查询转换为北京(东八区)时间:

SELECT CONVERT_TZ(NOW(), '+00:00', '+08:00') AS beijing_time;
此语句将当前UTC时间转换为北京日期时间,并直接显示结果。
临时设置会话时区为东八区
通过修改会话时区,使时间函数自动输出北京日期:
SET time_zone = '+08:00'; SELECT NOW() AS beijing_time;
执行后,当前会话中的所有时间查询将默认基于北京时区。
直接获取日期部分
若仅需日期(不含时间),可使用DATE()函数提取:
SELECT DATE(CONVERT_TZ(NOW(), '+00:00', '+08:00')) AS beijing_date;
注意事项
- 确保MySQL服务器已加载时区数据(可通过
mysql_tzinfo_to_sql导入)。 - 若未配置时区,可使用固定偏移量
INTERVAL 8 HOUR替代:SELECT NOW() + INTERVAL 8 HOUR AS beijing_time;
通过以上方法,即可在MySQL中准确获取符合北京时区的当前日期与时间,根据实际需求选择方案,并注意时区数据的完整性以避免误差。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/14373.html发布于:2026-09-02





