MySQL CONVERT_TZ()函数

MySQL CONVERT_TZ()函数

MySQL CONVERT_TZ()函数用于将数据从一种时区转换为另一种时区。

阅读更多:MySQL 教程

语法

CONVERT_TZ(dt,from_tz,to_tz)

参数说明

  • dt:需要转换的时间值,必选。
  • from_tz:原始时间值所处的时区,必选。
  • to_tz:目标时区,必选。

示例:

假设当前系统时区为UTC,有一张Employee表,其中记录了员工名字和加入公司时的时间

CREATE TABLE Employee(
    name varchar(50) NOT NULL,
    join_time datetime NOT NULL
);
INSERT INTO Employee(name,join_time) VALUES("Jack","2021-08-27 08:00:00");

现在希望将上述记录中的时间值转换为Asia/Shanghai时区的时间,可以使用如下SQL语句:

SELECT name,CONVERT_TZ(join_time,'UTC','Asia/Shanghai') AS join_time FROM Employee;

输出结果如下:

name join_time
Jack 2021-08-27 16:00:00

通过使用CONVERT_TZ()函数,系统将原始时间值从UTC时区转换为了Asia/Shanghai时区,将时间值从早上8点转换到了下午4点。

注意事项

  • from_tzto_tz参数必须是系统中已存在的时区,可以通过执行如下SQL语句查询系统支持的所有时区:
    SELECT * FROM mysql.time_zone;
    
  • CONVERT_TZ()函数可以与其他日期/时间函数一起使用,例如:
    SELECT MONTH(CONVERT_TZ(join_time,'UTC','Asia/Shanghai')) AS month_joined FROM Employee;
    

    输出结果为:

month_joined
8

总结

MySQL CONVERT_TZ()函数是用于将数据从一种时区转换为另一种时区的函数,使用该函数时需要注意from_tz和to_tz参数必须是系统中已存在的时区,可以通过执行SQL语句查询系统支持的所有时区。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程