更新时间:2026-07-17 GMT+08:00
date_add
date_add函数用于计算按照days幅度递增start_date日期的天数。
如需要获取当前日期基础上指定变动幅度的日期,可结合current_date或getdate函数共同使用。
请注意date_add函数与date_sub函数逻辑相反。
命令格式
date_add(string startdate, int days)
参数说明
| 参数 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| start_date | 是 | DATE 或 STRING | 代表起始日期。 支持以下格式:
|
| days | 是 | BIGINT | 代表需要增加天的数量。
|
返回值说明
返回DATE类型的日期值,格式为yyyy-mm-dd。
- start_date非DATE或STRING类型时,返回报错,错误信息:data type mismatch;
- start_date为DATE或STRING类型,但不符合日期值的入参格式时,返回NULL;
- start_date值为NULL时,返回NULL。
- days值为NULL时,返回NULL。
示例代码
- 示例1
select date_add('2023-02-28 00:00:00', 1);返回2023-03-01。加1天,结果超出当年2月份的最后1天,实际值为下个月的第1天。
- 示例2
select date_add(date '2023-02-28', -1);
返回2023-02-27。减1天。
- 示例3
select date_add('2023-02-28 00:00:00', 20);返回2023-03-20。
- 示例4
select date_add(getdate(),-1);
假设当前时间为2023-08-14 16:00:00,返回2023-08-13。
- 示例5
select date_add('2023-02-28 00:00:00', null);返回NULL。
父主题: 日期函数