- 类别:
ADD_MONTHS¶
在日期或时间戳上添加或减去指定的月数,保留月末信息。
语法¶
ADD_MONTHS( <date_or_timestamp_expr> , <num_months_expr> )
实参¶
必填:
date_or_timestamp_expr
这是您要向其中添加指定月数的日期或时间戳表达式。
num_months_expr
这是您要添加的月数。这应该是一个整数。它可能是正数,也可能是负数。如果该值是非整型数值(例如,FLOAT),则该值将四舍五入为最接近的整数。
返回¶
返回值的数据类型与第一个参数的数据类型相同。例如,如果输入是 DATE
,则输出是 DATE
。如果输入是 TIMESTAMP_NTZ
,则输出是 TIMESTAMP_NTZ
。
使用说明¶
示例¶
为某日期添加 2 个月,并将该日期转换为没有时区的时间戳:
SELECT ADD_MONTHS('2016-05-15'::timestamp_ntz, 2) AS RESULT; +-------------------------+ | RESULT | |-------------------------| | 2016-07-15 00:00:00.000 | +-------------------------+
演示月末信息的保存:
在 2016 年(闰年)2 月的最后一天增加一个月。
从 2016 年 5 月的最后一天减去一个月。
SELECT ADD_MONTHS('2016-02-29'::date, 1) AS RESULT; +------------+ | RESULT | |------------| | 2016-03-31 | +------------+SELECT ADD_MONTHS('2016-05-31'::date, -1) AS RESULT; +------------+ | RESULT | |------------| | 2016-04-30 | +------------+