步骤二:编写SQL分析语句

本文介绍编写SQL分析语句的操作流程。

前提条件

已创建SQL分析任务:您需在SQL数据分析工作台,根据业务需求,编写SQL分析语句。

背景信息

下列类型的数据存储表可作为SQL分析的查询对象,您可通过SQL分析语句来处理对应表的数据。

注意事项

  • 输出字段仅支持以字母或美元符号($)为首,且仅包含英文字母、数字、美元符号($)和下划线(_)。长度不超过60个字符。

    如果原始字段不满足以上条件,需为其定义别名。

  • 系统字段和系统函数不可作为输出字段。

    类型

    不支持的字段

    系统字段名

    idgmt_creategmt_modifiedcreatormodifieris_deletedappend_column_nameappend_column_valueappend_column_concatscope_id__closure_context__

    系统函数

    COUNTDATE_FORMATAVGMAXMINSUM

  • 如果查询对象的表中存在系统保留字段,且需查询该字段的值,输出字段需使用您指定的新别名。

    例如,查询设备表${system.device}中字段gmt_create的值时,将其输出字段指定为gmt_create_alias,SQL语句如下:

    select gmt_create as gmt_create_alias from ${system.device}
  • 如果输出字段的数据类型不支持查询对象字段的数据类型,需转换数据类型。

    例如,设备表${system.device}中字段gmt_create的数据类型为DATE,而输出字段的数据类型不支持该类型,需转换为BIGINT,SQL语句如下:

    select CAST(EXTRACT(EPOCH FROM gmt_create) * 1000 AS BIGINT) as gmt_create_alias from  ${system.device}
  • 如果SQL任务中需要获取调度任务的当前时间,直接使用${bizDate}替换current_timestamp()

    • ${bizDate}:SQL任务的调度时间点,实际执行任务时会被动态替换。格式为13位的毫秒级时间戳,例如1699286400000。取值范围是SQL任务调度策略生效日期内的时间。

    • current_timestamp():当前TIMESTAMP类型的时间戳。

    使用${bizDate}的原因:

    • 对于当前调度任务,根据当前调度时间${bizDate}current_timestamp()都可正常调度产出数据。

    • 对于回刷周期任务,需要根据历史的调度时间点${bizDate}产出数据。此时,如果使用current_timestamp()仍然是按照当前时间产出数据,无法回刷产出历史时间的数据。

  • SQL分析任务支持的函数说明,请参见函数概述

操作步骤

  1. 分析洞察页面,找到已创建的SQL分析任务,然后单击右侧操作列的开发工作台,进入SQL数据服务工作台页面。

    SQL数据服务工作台的详细说明,请参见步骤一:创建SQL分析任务进入SQL分析工作台

  2. SQL数据服务工作台左侧,选择要查询的数据对象。

    重要

    SQL分析任务支持将数据存储表作为查询对象,更多信息,请参见离线数据存储

    您可以执行以下操作:

    • 双击表名,快速生成查询语句。

    • 将鼠标移动至要查询的表名处后:

      • 单击复制,然后在SQL语句编写区域,粘贴表名,用于SQL语句的编写。

      • 单击详情,查看对应存储表的数据结构,或预览存储表最近20条数据。

  3. 在SQL语句编辑区域,根据业务需要,编写SQL分析语句。

    重要

    如果SQL分析任务存储数据到自定义的时序表中,每条数据写入都必须包含时间戳字段ts,否则数据写入时序表会失败。如果写入失败,您可通过任务运维页面查看SQL分析任务的运行日志。具体操作,请参见运维SQL分析任务

    您可单击工作台顶部的智能助手,通过SQL模板快速生成SQL分析语句,进行数据分析。

    1. 您可在SQL模板页签,根据数据分析需求,选择目标函数。

      函数的使用说明,请参见SQL支持的函数

    2. 等待系统生成对应的SQL分析语句后,单击立即使用复制SQL语句到SQL语句编辑区域。

    3. 在SQL语句编辑区域,修改查询对象等相关参数,即可完成SQL分析语句的编写。

    image.png
  4. 可选:单击编辑区域上方的验证SQLimage.png图标,校验编写的SQ分析L语句的语法。

  5. 确认SQL分析语句无误后,单击编辑区域上方的运行image.png图标。

    • 如果运行成功,可在编辑区域下方的运行日志结果页签下,分别查看运行SQL分析语句的日志,及不同图表样式的结果。

      您也可单击导出数据,下载当前运行结果的CSV文件。

    • 如果运行失败,可在运行日志页签下,根据报错信息,解决问题后,重新运行。

后续步骤

步骤三:设置任务调度策略并发布