SQL - CURRENT_TIMEZONE() 函数



SQL 的CURRENT_TIMEZONE()函数用于根据运行 SQL 服务器的系统时区返回当前时区与协调世界时 (UTC) 的偏移量。

时区偏移量是当地时间与 UTC 之间的差值,以小时和分钟表示。

此函数返回格式为“+/- HH:MM”的时区偏移量,其中正号 (+) 表示领先于 UTC 的偏移量,负号 (-) 表示落后于 UTC 的偏移量。

注意 - 在 SQL 中,时区始终设置为 UTC,CURRENT_TIMEZONE 函数返回 UTC 时区的名称。

语法

以下是 SQL CURRENT_TIMEZONE() 函数的语法:

CURRENT_TIMEZONE()

参数

此函数不接受任何参数。

示例

以下示例演示了 CURRENT_TIMEZONE() 函数的用法:

SQL> SELECT CURRENT_TIMEZONE() AS CURRENT_TIMEZONE;

输出

当我们执行上述查询时,将获得如下输出:

+--------------------------------------------------+
| CURRENT_TIMEZONE                                 | 
+--------------------------------------------------+
| (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi  |
+--------------------------------------------------+

示例

假设我们使用下面的 CREATE 语句在 SQL 数据库中创建了一个名为 STUDENTS 的表:

SQL> CREATE TABLE STUDENTS(ID INT NOT NULL, NAME VARCHAR (200) NOT NULL, AGE INT NOT NULL);

现在,让我们使用下面的 INSERT 语句在 STUDENTS 表中插入一些记录:

SQL> INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(1, 'Dhruv', '20');
INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(2, 'Arjun', '23');
INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(3, 'Dev', '25');
INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(4, 'Riya', '19');
INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(5, 'Aarohi','24');
INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(6, 'Lisa', '20');
INSERT INTO STUDENTS(ID, NAME, AGE) VALUES(7, 'Roy', '24');

我们可以使用以下查询来验证表是否已创建:

SQL> SELECT * FROM STUDENTS;

STUDENTS 表已成功创建在 SQL 数据库中。

+----+--------+-----+
| ID | NAME   | AGE |
+----+--------+-----+
| 1  | Dhruv  | 20  |
| 2  | Arjun  | 23  |
| 3  | Dev    | 25  |
| 4  | Riya   | 19  | 
| 5  | Aarohi | 24  |
| 6  | Lisa   | 20  | 
| 7  | Roy    | 24  |
+----+--------+-----+

我们可以使用以下查询检索学生的当前时区:

SQL> SELECT *, CURRENT_TIMEZONE() AS CURRENT_TIMEZONE FROM STUDENTS;

输出

上述查询的输出如下所示:

+----+--------+-----+-------------------------------------------------+
| ID | NAME   | AGE | CURRENT_TIMEZONE                                |
+----+--------+-----+-------------------------------------------------+
| 1  | Dhruv  | 20  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi |
| 2  | Arjun  | 23  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi | 
| 3  | Dev    | 25  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi | 
| 4  | Riya   | 19  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi | 
| 5  | Aarohi | 24  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi | 
| 6  | Lisa   | 20  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi | 
| 7  | Roy    | 24  | (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi | 
+----+--------+-----+-------------------------------------------------+
sql-date-functions.htm
广告