在 MySQL 中,DATE_SUB() 函数用于将指定时间减去一段时间间隔后得到一个新的日期时间(datetime)值。其语法如下:
DATE_SUB(date_or_datetime_expr, INTERVAL expr time_unit)
其中,date_or_datetime_expr 表示要进行计算的日期或日期时间;expr 是一个表示时间间隔大小的表达式;time_unit 是要减去的时间单位,可以是 YEAR、MONTH、DAY、HOUR、MINUTE 或 SECOND。需要注意的是,expr 表达式可以是一个整数或一个与 date_or_datetime_expr 值类型相同的表达式。
下面是一些示例:
-- 向一个日期加上一年零二个月
SELECT DATE_ADD('2022-06-10', INTERVAL '1-2' YEAR_MONTH);
-- 获取当前时间的一天前的时间
SELECT DATE_SUB(NOW(), INTERVAL 1 DAY);
-- 获取当前时间的一周前的时间(假设以周日为一周的开始)
SELECT DATE_SUB(NOW(), INTERVAL 1 WEEK);
在上面的第二个示例中,我们用 NOW() 函数获取当前时间(一个 datetime 类型的值),然后使用 DATE_SUB() 函数将其减去了一天,得到了一个新的日期时间值;在第三个示例中,我们将当前时间减去了一个星期(WEEK),因此得到了一周前的时间。
需要注意的是,使用 DATE_SUB() 函数得到的新日期时间值将与原始输入的日期时间格式相同。因此,输入值为日期,输出值也将为日期;输入值为日期时间(datetime),输出值也将为日期时间。
DATE_SUB()函数用于从日期或datetime值中减去指定时间间隔。expr表示间隔大小,time_unit包括YEAR、MONTH等单位。示例包括加一年两个月、一天前和一周前的时间计算。输出格式与输入一致。
522

被折叠的 条评论
为什么被折叠?



