在数据建模过程中,一些复杂逻辑可以通过使用即席分析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. 单击查询控件选择数据集,若数据集中含有SQL参数,在数据集选择区除展示对应的维度、度量外还会展示数据集中的SQL参数。SQL参数显示为橙色。
    说明 SQL参数不支持设置级联查询。
  2. 选择参数项,单击设置过滤条件图标,对筛选项进行设置。

    日期类型、数值类型及文本型的按条件筛选参数查询设置请参见查询控件

    文本型按枚举筛选参数项设置需先设定枚举值范围,手动输入参数项。

    查询时选择对应参数即可。