迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 数据库 > MySQL >

使用 Date_ADD() 函数在 MySQL 中添加日期和时间

作者:迹忆客 最近更新:2023/05/06 浏览次数:

本文介绍如何使用 DATE_ADD() 函数在 MySQL 中添加日期和时间。 我们将学习如何单独添加或减少天、年、月和时间,以及如何将两者结合起来(例如,天和小时)。


MySQL 中的 DATE_ADD() 方法

我们可以使用 DATE_ADD() 方法为 DATETIME 或 DATE 类型的值添加一个时间间隔。 它接受两个参数。

第一个参数是 start_date,这是一个开始日期。 它可以是 DATE/DATETIME 类型。

第二个参数是INTERVAL表达式单元,是需要加上start_date指定值的区间值。 您可以找到我们可以使用此方法的单位列表。

如果第一个参数是 DATETIME 或间隔值包含时间元素(小时、分钟或秒),则返回 DATETIME 值; 否则,它返回一个字符串。


在 MySQL 中创建表并插入数据

要学习 DATE_ADD() 方法,让我们创建一个名为 trips 的表,该表具有 id、country_name 和 startDate 列,其中 startDate 是 DATETIME 类型。 您还可以创建一个行程表并填充下面给出的一些随机数据以进行后续操作。

CREATE TABLE trips(
  id INT NOT NULL AUTO_INCREMENT,
  country_name VARCHAR(45) NOT NULL,
  startDate DATETIME NOT NULL,
  PRIMARY KEY (id));

INSERT INTO trips (country_name, startDate) VALUES
('Pakistan', '2019-01-27 01:23:34'),
('USA', '2019-02-22 12:34:05'),
('Turkey', '2020-05-14 08:03:02'),
('India', '2020-01-21 11:20:04');

SELECT * FROM trips;

输出:

| id   | country_name | startDate           |
| ---- | ------------ | ------------------- |
| 1    | Pakistan     | 2019-01-27 01:23:34 |
| 2    | USA          | 2019-02-22 12:34:05 |
| 3    | Turkey       | 2020-05-14 08:03:02 |
| 4    | India        | 2020-01-21 11:20:04 |

使用 DATE_ADD() 函数在 MySQL 中添加天数

在 id 为 3 的 trips 表的 startDate 中添加 2 天。

示例代码:

UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 2 DAY)
WHERE id = 3;

输出:

| id   | country_name | startDate           |
| ---- | ------------ | ------------------- |
| 1    | Pakistan     | 2019-01-27 01:23:34 |
| 2    | USA          | 2019-02-22 12:34:05 |
| 3    | Turkey       | 2020-05-16 08:03:02 |
| 4    | India        | 2020-01-21 11:20:04 |

我们还可以按如下方式减去天数。

示例代码:

UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL -2 DAY)
WHERE id = 1;

输出:

| id   | country_name | startDate           |
| ---- | ------------ | ------------------- |
| 1    | Pakistan     | 2019-01-25 01:23:34 |
| 2    | USA          | 2019-02-22 12:34:05 |
| 3    | Turkey       | 2020-05-16 08:03:02 |
| 4    | India        | 2020-01-21 11:20:04 |

使用 DATE_ADD() 函数在 MySQL 中添加月份和年份

像天一样,我们也可以加上年和月。 要减去一些年份或月份,请编写一个带有减号 (-ve) 的表达式。

示例代码:

#add month
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 MONTH)
WHERE id = 1;

#add year
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 YEAR)
WHERE id = 1;

输出:

| id   | country_name | startDate           |
| ---- | ------------ | ------------------- |
| 1    | Pakistan     | 2020-02-25 01:23:34 |
| 2    | USA          | 2019-02-22 12:34:05 |
| 3    | Turkey       | 2020-05-16 08:03:02 |
| 4    | India        | 2020-01-21 11:20:04 |

使用 DATE_ADD() 函数在 MySQL 中添加小时、分钟和秒

在 id 为 4 的 trips 表的 startDate 中添加 1 小时、分钟和秒。

示例代码:

#add hours
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 HOUR)
WHERE id = 4;

#add minutes
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 MINUTE)
WHERE id = 4;

#add seconds
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL 1 SECOND)
WHERE id = 4;

输出:

| id   | country_name | startDate           |
| ---- | ------------ | ------------------- |
| 1    | Pakistan     | 2020-02-25 01:23:34 |
| 2    | USA          | 2019-02-22 12:34:05 |
| 3    | Turkey       | 2020-05-16 08:03:02 |
| 4    | India        | 2020-01-21 12:21:05 |

使用 DATE_ADD() 函数在 MySQL 中添加或减去日期和时间

在 id 为 3 的 trips 表的 startDate 中添加 2 小时 2 分钟。

#add hours and minutes
UPDATE trips
SET startDate = DATE_ADD(startDate , INTERVAL '2:2' HOUR_MINUTE)
WHERE id = 3;

输出:

| id   | country_name | startDate           |
| ---- | ------------ | ------------------- |
| 1    | Pakistan     | 2020-02-25 01:23:34 |
| 2    | USA          | 2019-02-22 12:34:05 |
| 3    | Turkey       | 2020-05-16 10:05:02 |
| 4    | India        | 2020-01-21 12:21:05 |

同样,我们可以使用 DAY_HOUR、YEAR_MONTH 等。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 MySQL 中声明和使用变量

发布时间:2024/03/26 浏览次数:115 分类:MySQL

当你需要在 MySQL 中的脚本中存储单个值时,最好的方法是使用变量。变量有不同的种类,有必要知道何时以及如何使用每种类型。

在 MySQL 中实现刷新权限

发布时间:2024/03/26 浏览次数:211 分类:MySQL

本教程介绍了 MySQL 中的刷新权限命令,用于刷新授权表并影响允许的更改。

在 MySQL 中设置时区

发布时间:2024/03/26 浏览次数:93 分类:MySQL

在本教程中,我们将学习如何在 MySQL 服务器中更改时区。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便