SQLPathLab
日期时间函数 · 基础

DATEDIFF

计算两个日期之间相差的天数。

简介

MySQL 的 DATEDIFF(date1, date2) 返回 date1 减去 date2 的天数,并只使用参数的日期部分。参数顺序会决定正负号,跨时区或需要小时级精度时应改用适合的时间函数。本地教程使用固定日期,结果可以重复验证。

基础语法

SELECT DATEDIFF('2026-02-01', '2026-01-01') AS days;

示例

DATEDIFF 示例

计算 2026-02-01 减去 2026-01-01 的天数,核对参数顺序与正结果。

运行结果

result
days
31

常见问题

DATEDIFF 的参数顺序会影响正负号吗?

会,MySQL 返回第一个日期减第二个日期的天数,交换参数会改变符号。

DATEDIFF 会计算时分秒吗?

MySQL 的 DATEDIFF 只比较日期部分;需要更细粒度时可考虑 TIMESTAMPDIFF。

DATEDIFF 的写法跨数据库一致吗?

不一致,函数名、参数顺序和返回单位都可能不同,应按目标数据库确认。

标签

常用日期时间

这篇内容是否清楚?