MySQL 的 DATE_SUB() 函数用于从日期中减去一定的时间间隔。
语法:
DATE_SUB(date,INTERVAL expr unit)
参数说明:
- date:要进行减法计算的日期值;
- INTERVAL:固定格式,表示时间间隔;
- expr:表示要减去的数量,可以是一个整数或者一个表达式;
- unit:表示时间单位,可以是以下任何一个值:MICROSECOND、SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、QUARTER 或 YEAR。
示例:
假设有一个名为 orders 的订单表,其中包含了下单时间字段 order_time(datetime 类型)和发货时间字段 shipping_time(datetime 类型)。现在需要查询出下单到发货超过 1 天的所有订单信息。可以使用 DATE_SUB() 函数来实现:
SELECT * FROM orders WHERE shipping_time > DATE_SUB(order_time, INTERVAL 1 DAY);
这条 SQL 查询将返回所有下单时间距离发货时间超过 1 天的订单记录。




