MariaDB TIMESTAMPADD() 函数的基础用法与实例
MariaDB TIMESTAMPADD()
函数用来为一个日期/时间值加上指定的时间间隔。
发布于
MariaDB TIMESTAMPADD()
函数用来为一个日期/时间值加上指定的时间间隔。它可以用于在获取的日期基础上计算新的日期或时间。该函数在处理涉及日期和时间的问题时非常有用。
语法
MairaDB TIMESTAMPADD()
函数的语法如下:
TIMESTAMPADD(unit, interval, datetime_expr)
unit
:指定需要增加的时间单位,可以是以下值:MICROSECOND、SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、QUARTER 或者 YEAR。interval
:指定时间单位数值,必须是整数。datetime_expr
:需要增加的目标日期/时间值。
函数的返回值是另一个 DateTime 表达式,其值为在 datetime_expr
上加上 interval
后指定时间单位的结果。
实例
增加天数
以下实例展示了如何为一个日期增加几天:
SELECT TIMESTAMPADD(DAY, 5, '2023-03-01');
以下是该语句的输出:
+------------------------------------+
| TIMESTAMPADD(DAY, 5, '2023-03-01') |
+------------------------------------+
| 2023-03-06 |
+------------------------------------+
该示例将日期 ‘2023-03-01’ 加上 5 天的结果。
增加月份
本示例展示了如何为一个日期增加几个月:
SELECT TIMESTAMPADD(MONTH, 3, '2023-05-15');
以下是该语句的输出:
+--------------------------------------+
| TIMESTAMPADD(MONTH, 3, '2023-05-15') |
+--------------------------------------+
| 2023-08-15 |
+--------------------------------------+
该示例将日期 ‘2023-05-15’ 加上 3 个月的结果。
增加小时和分钟
本示例展示了如何同时为一个日期时间值增加小时和分钟:
SELECT TIMESTAMPADD(HOUR, 3, TIMESTAMPADD(MINUTE, 45, '2023-03-15 10:15:00'));
以下是该语句的输出:
+------------------------------------------------------------------------+
| TIMESTAMPADD(HOUR, 3, TIMESTAMPADD(MINUTE, 45, '2023-03-15 10:15:00')) |
+------------------------------------------------------------------------+
| 2023-03-15 14:00:00 |
+------------------------------------------------------------------------+
该示例先将日期时间 ‘2023-03-15 10:15:00’ 加上 45 分钟,再在该结果上加上 3 小时。最终得到新的日期时间值。
减少年份
本示例展示了如何使用负数来减少年份:
SELECT TIMESTAMPADD(YEAR, -5, '2023-03-15');
以下是该语句的输出:
+--------------------------------------+
| TIMESTAMPADD(YEAR, -5, '2023-03-15') |
+--------------------------------------+
| 2018-03-15 |
+--------------------------------------+
该示例将日期 ‘2023-03-15’ 减去 5 年的结果。
查询表中的日期时间数据
DROP TABLE IF EXISTS orders;
CREATE TABLE orders (
id INT AUTO_INCREMENT PRIMARY KEY,
order_date DATETIME
);
INSERT INTO orders (order_date) VALUES
('2023-02-15 09:23:11'),
('2023-03-01 14:56:32'),
('2023-03-15 18:09:45');
SELECT id, order_date, TIMESTAMPADD(WEEK, 1, order_date) AS next_week
FROM orders;
以下是该语句的输出:
+----+---------------------+---------------------+
| id | order_date | next_week |
+----+---------------------+---------------------+
| 1 | 2023-02-15 09:23:11 | 2023-02-22 09:23:11 |
| 2 | 2023-03-01 14:56:32 | 2023-03-08 14:56:32 |
| 3 | 2023-03-15 18:09:45 | 2023-03-22 18:09:45 |
+----+---------------------+---------------------+
该示例查询 orders 表中的订单日期,并计算每个订单日期的下一周的日期时间。
相关函数
以下是几个与 MairaDB TIMESTAMPADD()
相关的几个函数:
- MariaDB
TIMESTAMPDIFF()
函数用来获取两个日期时间值之间的时间间隔。 - MariaDB
DATE_ADD()
函数用来为日期增加指定的时间间隔。 - MariaDB
DATE_SUB()
函数用来从日期中减去指定的时间间隔。 - MariaDB
ADDTIME()
函数用来将时间与时间或日期时间进行加法运算。 - MariaDB
SUBTIME()
函数用来将时间从时间或日期时间中进行减法运算。
结论
MariaDB TIMESTAMPADD()
函数是一个非常有用的日期时间处理函数,可以方便地对日期或时间进行加减操作。通过指定不同的时间单位和间隔,可以实现多种日期时间计算需求。结合其他相关的日期时间函数,可以更好地满足数据处理中对时间维度的需求。