在数据建模过程中,一些复杂逻辑可以通过使用即席分析SQL创建数据集实现。即席分析SQL支持动态传参。基于SQL传参实现建模分析,扩展敏捷BI支撑的场景深度,满足复杂的数据分析场景诉求。

操作步骤

  1. 数据源页面单击右上角即席分析SQL
  2. 即席查询SQL页面,您可以修改指定数据源。
  3. 确定数据源后输入SQL语句。
    示例:
    SELECT  report_date,
            order_level,
            shipping_type,
            area,
            price,
            order_number
    from    company_sales_record
    where   ${report_date :report_date}
    and     ${order_level :order_level}
    and     ${order_number :order_number}
  4. 单击执行,运行SQL语句。
  5. 查看执行结果
    在执行结果界面您可以查看SQL执行结果。
    1. 单击执行结果页签。
    2. 单击历史记录页签可查看当前即席分析SQL执行时间、对应的SQL语句以及SQL执行耗时。
      • 单击复制,复制对应SQL语句,可将其粘贴到SQL输入框中。
      • 单击创建数据集 可直接将历史SQL语句创建为数据集。
      • 单击收起执行结果。
    即席分析SQL支持动态参数,在SQL建模时,在where语句后面追加SQL参数,参数格式为${物理字段名:参数别名},该参数可以在查询控件中被引用。
    说明 参数字段在数据集中不显示,在查询控件中会显示。
    SQL示例:
    SELECT  report_date,
            order_level,
            shipping_type,
            area,
            price,
            order_number
    from    company_sales_record
    where   ${report_date :report_date}
    and     ${order_level :order_level}
    and     ${order_number :order_number}
  6. 参数设置
    可新增参数变量和修改变量类型。目前支持文本、数值、日期-年月日、日期-年月、日期-年周、日期-年、年月日时分秒七种变量类型。
    • 单击新增参数变量新增参数别名和变量类型,此参数别名需要以${物理字段名:参数变量名}格式添加到SQL语句where条件中。
    • 单击快速提取自动获取SQL语句中的参数别名,变量类型默认为文本,可手动修改。快速提取
    • 单击格式化可格式化SQL语句。
  7. 单击创建数据集填写数据集名称和保存位置完成数据集创建。创建成功后,页面会自动跳转到数据集管理页面,新创建的数据集会带有New的图标,方便快速定位新的数据集。
    在数据集列表页选择此数据集右键选择修改SQL可修改此即席分析SQL语句。
    说明 即席分析SQL不支持MySQL 5.7版本数据库表名别名,不支持DDL语句。

SQL参数在查询控件中的使用

  1. 通过单击查询控件图标添加查询控件至仪表板。
  2. 单击设置新建筛选项图标,对查询控件进行设置。新建筛选项
  3. 查询条件设置页面,设置查询条件名称并选择基于包含SQL参数的数据集的图表进行关联设置。在筛选字段选择区域除展示对应的维度、度量外还会展示数据集中的SQL参数,SQL参数显示为橙色。参数字段设置
    说明 当关联字段为文本型SQL参数字段且展示类型为下拉列表(原枚举筛选)时,选项值来源不支持自动解析方式。如果设置为该方式,在查询控件中无查询值。

    日期类型、数值类型、文本型的查询设置请参见日期查询数值查询文本查询