调度参数只支持获取时间类型数据,部分节点(例如,离线同步节点)配置了调度参数后,调度参数的返回值不能直接使用,需要进行函数转换等二次处理。本文为您介绍二次处理调度参数返回结果的典型场景。

背景信息

调度参数支持的时间类型未覆盖所有的时间场景,如果您的业务需要使用特殊时间格式,则可以使用引擎函数进行处理。二次处理调度参数时,部分节点不支持直接使用函数转换参数返回结果。对于不支持直接使用函数转换的节点,您可以通过赋值节点进行相关处理。

直接使用函数,或通过赋值节点二次处理调度参数的典型场景如下:
更多操作参考如下:

获取上个月最后一天

使用调度参数获取上个月最后一天的配置及测试结果如下表。
参数配置 测试定时时间CYCTIME 返回结果
  • 调度参数配置:last_month=$[yyyy-mm]
  • 处理调度参数的返回值:SELECT REPLACE(DATEADD(date'${last_month}-01',-1,'dd'),'-','');
  • 预期返回格式:yyyymmdd
20210926000000 20210831

获取当前季度

使用调度参数获取当前季度的配置及测试结果如下表。
参数配置 测试定时时间CYCTIME 返回结果
  • 调度参数配置:month=$[mm]
  • 处理调度参数返回值:SELECT CEIL(INT('${month}')/3);
  • 预期返回类型:正整数。
20211025001700 4

获取定时时间15分钟前的年、月、日、小时、分钟

使用调度参数获取定时时间15分钟前的年、月、日、小时、分钟的配置及测试结果如下表。
参数配置 测试定时时间CYCTIME 返回结果
  • 调度参数配置:
    • year=$[yyyy-15/24/60]
    • month=$[yyyymm-15/24/60]
    • day=$[yyyymmdd-15/24/60]
    • hour=$[hh24-15/24/60]
    • mi=$[mi-15/24/60]
  • 处理调度参数返回值:select 'year=${year} month=${month} day=${day} hour=${hour} mi=${mi}';
  • 预期返回格式:
    • 年:yyyy
    • 月:yyyymm
    • 日:yyyymmdd
    • 小时:hh
    • 分钟:mm
20210727000500
  • year=2021
  • month=202107
  • day=20210726
  • hour=23
  • mi=50

获取时间区间,调度间隔为1天

获取昨天00:00:00到今天00:00:00的时间区间,调度间隔为1天。时间格式为yyyymmddhh24miss,精确到秒。
说明 使用Kafka和LogHub离线同步指定时间区间的数据时,如需配置调度参数,则调度参数的日期格式为yyyymmddhh24miss,日期区间为左闭右开。详情请参见Kafka ReaderLogHub Reader。不同场景的数据增量同步,详情请参见数据增量同步
调度参数的配置及测试结果如下表。
参数配置 测试定时时间CYCTIME 返回结果
  • 调度参数配置:
    • beginDateTime=$[yyyymmdd-1]
    • endDateTime=$[yyyymmdd]
  • 处理调度参数返回值:select '${beginDateTime}000000 ${endDateTime}000000';
  • 预期返回格式:yyyymmddhh24miss
20220117002300
  • 20220116000000
  • 20220117000000

获取时间区间,调度间隔为1小时

获取昨天00:00:00到今天00:00:00的时间区间,调度间隔为1小时。时间格式为yyyymmddhh24miss,精确到秒。
说明 使用Kafka和LogHub离线同步指定时间区间的数据时,如需配置调度参数,则调度参数的日期格式为yyyymmddhh24miss,日期区间为左闭右开。详情请参见Kafka ReaderLogHub Reader。不同场景的数据增量同步,详情请参见数据增量同步
调度参数的配置及测试结果如下表。
参数配置 测试定时时间CYCTIME 返回结果
  • 调度参数配置:
    • beginDateTime=$[yyyymmddhh24-1/24]
    • endDateTime=$[yyyymmddhh24]
  • 处理调度参数返回值:select '${beginDateTime}0000 ${endDateTime}0000';
  • 预期返回格式:yyyymmddhh24miss
20220117002300
  • 20220116230000
  • 20220117000000