Quick BI生成数据集的SQL占位符中${dateColumn.get(1)}不生效,接收不到查询控件传递过来的值
更新时间:
问题描述
Quick BI生成数据集的SQL占位符中${dateColumn.get(1)}不生效,接收不到查询控件传递过来的值。生成数据集的SQL语句片段如下:
where
per.is_current_month_performance = 'Y'
and per.flag = 'Y'
and per.order_code not like 'Y%'
and per.order_code not like 'S%'
and per.order_code is not null
and per.order_code <> ''
and per.performance_useflow_time >= '${x3.get(0)}'
and per.performance_useflow_time <= '${x3.get(1)}'
占位符定义截图如下:
图表日期范围查询控件和该占位符关联,传递值之后结束时间值不生效:
查看SQL,发现x3.get(1)不生效,没有接收到结束时间值:2022-05-17。
问题原因
生成数据集的SQL语句比较复杂时,where 语句中的过滤条件较多,需要将日期范围查询条件设置到第一个条件。
解决方案
SQL中where语句调整如下问题解决:
where
per.performance_useflow_time >= '${x3.get(0)}'
and per.performance_useflow_time <= '${x3.get(1)}'
and per.is_current_month_performance = 'Y'
and per.flag = 'Y'
and per.order_code not like 'Y%'
and per.order_code not like 'S%'
and per.order_code is not null
and per.order_code <> ''
适用于
- Quick BI
文档内容是否对您有帮助?