如何在DataWorks V2.0 的 ODPS SQL任务中使用调度参数

简介: DataWorks提供了系统调度参数,调度系统会根据调度参数的配置,结合当前的业务日期,将调度参数转换为具体的时间。

在ODPS SQL 中使用调度参数

DataWorks的调度参数分为两种,一种是系统调度参数,另一种是自定义调度参数。

系统调度参数只有两个:
bizdate:获取到业务日期,展示格式为:yyyymmdd;
cyctime:获取到任务实例的定时时间,格式为:yyyymmddhh24miss;

在SQL节点中使用系统调度参数

以下是在SQL代码中的用法,并设置该任务的定时运行时间为00:23分。
image

image

请注意:当代码中使用了调度参数,在界面上直接运行的时候,需要传入一个具体的值,因为直接运行不会经过调度系统,所以参数不会转换,需要输入一个具体的值,该值仅本次运行有效。
image

当任务提交后,点击冒烟测试运行,选择传入的业务日期时间,点击确认。
image

运行结果如下:
image
可以看到,时间都已经被替换了,bizdate获取到了我们传入的业务日期,cyctime获取到了任务的定时时间。

在SQL中使用自定义调度参数

DataWorks 除了支持系统默认调度参数外,还支持自定义调度参数,可以对时间的展示格式进行选择,而且可以在时间数值上进行相加减。

使用自定义调度参数的方法还是一样,先在代码中声明变量,然后给变量赋值。
image

运行结果如下:
image

特别注意:花括号和中括号的用途

image
若对时间表达式的格式有要求,可自行修改,比如:$[yyyy-mm-dd],
注意,如果是DATETIME格式,请拆开成两个变量组合一下,中间用空格隔开。
image

在给参数赋值时,$[] 中写时间表达式即可。

获取+/-周期的方法:

后N年:$[yyyy+N]

前N年:$[yyyy-N]

后N月:$[yyyymm+N]

前N月:$[yyyymm-N]

后N周:$[yyyymmdd+7*N]

前N周:$[yyyymmdd-7*N]

后N天:$[yyyymmdd+N]

前N天:$[yyyymmdd-N]

后N小时:$[yyyymmddhh24miss+N/24]

前N小时:$[yyyymmddhh24miss-N/24]

后N分钟:$[yyyymmddhh24miss+N/60/24]

前N分钟:$[yyyymmddhh24miss-N/60/24]

关于在SQL中使用调度参数,还有任何疑问,可以加入DataWorks的钉钉群,群号如下:
DataWorks数加交流0群(群号:11718465)

相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
目录
相关文章
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之新建项目的元数据的sql报错,如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
335 0
|
SQL DataWorks 安全
DataWorks产品使用合集之怎么跨项目移动sql任务
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
SQL DataWorks 大数据
DataWorks操作报错合集之SQL代码行数过长产生报错,该如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
1051 13
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
741 9
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
445 6
|
SQL Oracle 关系型数据库
MySQL、SQL Server和Oracle数据库安装部署教程
数据库的安装部署教程因不同的数据库管理系统(DBMS)而异,以下将以MySQL、SQL Server和Oracle为例,分别概述其安装部署的基本步骤。请注意,由于软件版本和操作系统的不同,具体步骤可能会有所变化。
1554 3
|
存储 SQL C++
对比 SQL Server中的VARCHAR(max) 与VARCHAR(n) 数据类型
【7月更文挑战7天】SQL Server 中的 VARCHAR(max) vs VARCHAR(n): - VARCHAR(n) 存储最多 n 个字符(1-8000),适合短文本。 - VARCHAR(max) 可存储约 21 亿个字符,适合大量文本。 - VARCHAR(n) 在处理小数据时性能更好,空间固定。 - VARCHAR(max) 对于大文本更合适,但可能影响性能。 - 选择取决于数据长度预期和业务需求。
1532 1
|
SQL 存储 测试技术