MySQL DATE_SUB() 函数详解
函数简介
DATE_SUB()
函数从日期(DATE
或DATETIME
)中减去时间值(或间隔)。
语法
例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据
APP 中接收数据代码:
DATE_SUB(date,INTERVAL expr type)
参数说明:
date 日期(时间)
expr 日期(时间)间隔
type 日期(时间)间隔单位
type 参数可以是下列值:
注意:type分为复合型和不复合型,不复合型的type可以和DATE_ADD()
函数通用,expr可以为负数;复合型的type,参数用引号包起来,中间用字符间隔起来,不能使用负数。如果日期(时间)间隔只指定了一个值,也能正常执行,但对应XXX_YYY的type使用的是下划线后YYY的单位,此时可以使用负数。
举例:
复合型
select date_add('2024-12-30', interval '1 2' YEAR_MONTH); #结果:2026-02-28
select date_add('2024-12-30', interval '1-2' YEAR_MONTH); #结果:2026-02-28
select date_add('2024-12-30', interval '1,2' YEAR_MONTH); #结果:2026-02-28
select date_add('2024-12-30', interval 1 YEAR_MONTH); #结果:2025-01-30
select date_add('2024-12-30', interval -1 YEAR_MONTH); #结果:2024-11-30
# 这里先减1年,再减2月,最后减1天,有点意思
select date_sub('2024-12-30', interval '1 2' YEAR_MONTH); #结果:2023-10-30