[]
在缓存/直连数据集配置过程中,可以通过SQL表达式创建自定义字段,在不修改原始数据的情况下,利用数据库原生函数高效生成计算字段,实现数据集的灵活扩展。
自定义Sql表达式的应用场景非常广泛,例如财务指标计算、客户信息整合、数据标准化处理等等。像计算'单价×数量×税率'
或合并'姓+名'
这类需求,用SQL表达式可一键实现,原始数据零修改。保持原始数据完整的同时,灵活扩展分析维度。
示例: 基于购买数量与产品单价构建Sql表达式,生成金额(购买数量 × 产品单价)
界面状态: 已进入缓存/直连数据集的数据准备界面。
表关系: 确保关联关系至少有一张表。
语法说明: 了解数据源特定的SQL语法规则
Sql
表达式遵循其引用字段所在表的数据源规定的语法。例如:
Oracle
:FirstName || ' ' || LastName
,遵守Oracle
语法。
Excel
:FirstName + ' ' + LastName
或Join(FirstName, LastName, ' ')
,遵守WynSql
语法。
表达式使用限制:
行级计算: Sql表达式仅支持行内运算(如字符串拼接、数值计算),不支持聚合函数(如 SUM、GROUP BY)。
参数支持: Sql表达式可以使用引用查询参数,如同使用原生 Sql 查询一样的规则,无论何种数据源,参数的引用方式都形如 @Parameter1
。
步骤一:进入字段详情视图
单击数据集编辑区的字段列表,默认进入详情视图。
步骤二:配置表达式字段
进入详情视图,选择任意字段,在字段所在行单击,选择添加Sql表达式字段(截图以直连数据集为例),进入Sql表达式配置对话框界面。
在Sql表达式配置对话框界面,输入字段名称,单击左侧数据源名称选择一个数据源并单击下拉箭头选择数据表;双击字段添加至表达式,配合WynSql函数完善表达式,最后单击保存或保存并继续创建按钮完成操作。
查询参数引用:
在表达式中使用@参数名
(如@P1
)引用数据集的查询参数。
快速添加参数: 输入未定义的参数(如@P1
)后,单击右下角的参数按钮完成参数配置。
PostgreSQL数据源注意事项: 字段名称需用双引号包裹(如"产品单价"*2
),否则可能会报错。
计算字段添加完成后,新的字段在计算字段界面显示。您可以单击指标右侧的,对指标进行编辑、删除或基于新字段继续添加计算字段。
步骤三:预览数据
步骤三:预览数据
自定义Sql表达式配置完成后,首先需要设置数据集需要的输出字段(本例为展示直观,仅勾选购买数量和产品单价这两个字段)。
输出字段设置完成后,单击上方操作栏的预览按钮,即可进行数据验证。
注意: 新添加的 Sql表达式字段 默认必须输出,不能取消。如不需要输出此字段,请将其删除。
步骤四:保存数据集
数据验证通过后,单击上方操作栏的保存按钮,输入数据集的名称后即可保存数据集。保存后的数据集即可在仪表板/报表中进行使用。
执行限制: SQL表达式直接由数据源执行,需遵循对应数据库语法规则,且不支持跨表/跨源操作。
复用限制: 当复用其他数据集时,无法添加SQL表达式字段。
性能优先级: 当需求同时适用于数据源原生函数与WynSql时,应优先采用Sql表达式,因其直接由数据源执行,可获得更优的运算性能。