云日志服务 LTS-日期时间函数:dt_add
dt_add
根据指定的时间粒度修改值或时间表达式的值。
- 函数格式
dt_add(value, dt1=None, dt2=None, year(s)=None, month(s)=None, day(s)=None, hour(s)=None, minute(s)=None, second(s)=None, microsecond(s)=None, week(s)=None, weekday=None)
- 参数说明
参数名称
参数类型
是否必填
说明
value
字符串、Unix时间戳或日期时间对象
是
日期时间表达式。
dt1
字符串、Unix时间戳或日期时间对象
否
日期时间表达式,默认为None。
dt2
字符串、Unix时间戳或日期时间对象
否
日期时间表达式,默认为None。
year/years
Number
否
- year:表示需要替换的年份,例如year=2020,默认为None。
- years:表示需要增加年份的数量,如years=1表示在原来year的基础上再增加一年。
day/days
Number
否
- day:表示需要替换的天,例如day=1,默认为None。
- days:表示需要增加天的数量,如days=1表示在原来day的基础上加一天。
hour/hours
Number
否
- hour:表示需要替换的小时,例如hour=1,默认为None。
- hours:表示需要增加小时的数量,如hours=1表示在原来hour的基础上加一小时。
minute/minutes
Number
否
- minute:表示需要替换的分钟,例如minute=1,默认为None。
- minutes:表示需要增加分钟的数量,如minutes=1表示在原来minute的基础上加一分钟。
second/seconds
Number
否
- second:表示需要替换的秒数,例如second=1,默认为None。
- seconds:表示需要增加秒的数量,如seconds=1表示在原来second的基础上加一秒钟。
microsecond/microseconds
Number
否
- microsecond:表示需要替换的毫秒数,例如microsecond=1,默认为None。
- microseconds:表示需要增加毫秒的数量,microseconds=1表示在原来microsecond的基础上加一毫秒。
week/weeks
Number
否
- week:表示需要偏移的周数,例如week=1,默认为None。
- weeks:表示需要增加周的数量,weeks=1表示在原来week的基础上加一周。
weekday
Number
否
表示需要偏移的工作日,例如weekday=dt_MO(1),默认为None。
- 返回结果
返回修改后的时间表达式。
- 函数示例
- 示例1
- 测试数据
{ "dt": "2018-10-10 1:2:3", "dt1": "2018-11-3 11:12:13", "dt2": "2018-10-1 10:10:10" }
- 加工规则
e_set("dt_add",dt_add(dt_parse(v("dt")), dt1=dt_parse(v("dt1")), dt2=dt_parse(v("dt2"))))
- 加工结果
dt:2018-10-10 1:2:3 dt1:2018-11-3 11:12:13 dt2:2018-10-1 10:10:10 dt_add:2018-11-12 02:04:06
- 测试数据
- 示例2
- 测试数据
{ "dt": "2018-10-11 02:03:04", "year": "2019" }
year: 2019
- 加工规则
e_set("dt_add", dt_add(dt_parse(v("dt")), year=ct_int(v("year"))))
- 加工结果
dt:2018-10-11 02:03:04 dt_add:2019-10-11 02:03:04 year:2019
- 测试数据
- 示例1