不同数据库对日期加减操作语法各异:SQL Server使用DATEADD函数,MySQL用DATE_ADD/DATE_SUB配合INTERVAL,PostgreSQL支持+/-运算符,SQLite则用date函数加修饰符。

在 SQL 中对日期进行加减操作,主要依赖数据库提供的日期函数。不同数据库的语法略有差异,但核心思路一致:使用 DATEADD、DATE_SUB 或通过运算符实现。
DATEADD 是 SQL Server 和 Access 中常用的日期增减函数,语法如下:
DATEADD(datepart, number, date)
SELECT DATEADD(day, 7, '2023-10-01') -- 加7天,结果为 2023-10-08
SELECT DATEADD(month, -1, '2023-10-01') -- 减1个月,结果为 2023-09-01
MySQL 使用 DATE_ADD 和 DATE_SUB 函数进行日期操作:
DATE_ADD(date, INTERVAL expr unit)
DATE_SUB(date, INTERVAL expr unit)
示例:SELECT DATE_ADD('2023-10-01', INTERVAL 5 DAY) -- 加5天
SELECT DATE_SUB('2023-10-01', INTERVAL 2 MONTH) -- 减2个月
也支持更复杂的单位,如 INTERVAL 3 HOUR、INTERVAL 30 MINUTE
PostgreSQL 支持直接使用 + 和 - 运算符:
SELECT '2023-10-01'::date + INTERVAL '7 days' -- 加7天
SELECT '2023-10-01' - INTERVAL '1 month' -- 减1个月
SQLite 虽不支持 INTERVAL,但可通过 julianday 函数间接实现:
SELECT date('2023-10-01', '+7 days') -- 加7天
SELECT date('2023-10-01', '-1 month') -- 减1个月
不同数据库语法不同,关键是要根据所用系统选择对应函数。DATEADD、DATE_ADD、INTERVAL 是常见关键词。基本上就这些,掌握几个典型例子就能灵活运用。
以上就是SQL 日期函数如何加减日期?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号