如何在 MySQL 中从日期时间中减去 3 小时?

mysqlmysqli database

使用以下任一方法从 MySQL 中的 DateTime 中减去 3 小时。第一种方法如下 −

案例 1 − 使用 DATE_ADD()

select date_add(yourColumnName,interval -3 hours) from yourTableName;

案例 2 − 使用 DATE_SUB()

select date_sub(yourColumnName,interval 3 hours) from yourTableName;

首先,使用 now() 获取当前日期时间 −

mysql> select now();

以下是输出 −

+---------------------+
| now()               |
+---------------------+
| 2018-11-30 10:13:23 |
+---------------------+
1 row in set (0.00 sec)

DATE_ADD

从 DateTime 中减去 3 小时的查询如下。使用 date_add,我们设置了一个负日期 −

mysql> select date_add(now(),interval -3 hour);

以下是输出 −

+----------------------------------+
| date_add(now(),interval -3 hour) |
+----------------------------------+
| 2018-11-30 07:13:28              |
+----------------------------------+
1 row in set (0.00 sec)

DATE_SUB

获取当前日期和时间 −

mysql> select now();

输出 −

+---------------------+
| now()               |
+---------------------+
| 2018-11-30 10:14:12 |
+---------------------+
1 row in set (0.00 sec)

使用 date_sub() 实现第二种方法。查询如下 −

mysql> select date_sub(now(),interval 3 hour);

以下输出显示日期减去 3 小时 −

+---------------------------------+
| date_sub(now(),interval 3 hour) |
+---------------------------------+
| 2018-11-30 07:14:25             |
+---------------------------------+
1 row in set (0.00 sec)

相关文章