SQL数据集,传参的问题

1、按照文档说明,过滤组件,允许多选的情况下,SQL脚本要用 in 的方式传参。

2、尝试了多种写法,还是不能实现在多选的情况下,传入正确的参数。报错如下

3、各种试,加引号、加括号 等等。都不行。


参数设置 是可以的。

哪位大神给个实例。我参考参考。
谢谢

当前你的 DataEase 版本是啥呢?

发帖尽量带上 DataEase的版本哈,可以针对做一些测试。

1.18.14

这样尝试下,先删除下最后一个 inner join 里的参数,试下在关联的子查询里没有参数的情况下,过滤组件是否可以正常执行;
从配置上来看,没看出啥问题,可能是 sql 参数兼容性的问题。

去掉子查询里的 动态参数,直接报错了,保存不了 数据集。

我直接去掉了 整个子查询试了一下,如下截图。

然后 测试 仪表板 关联 参数,多选的情况下 也是报错。

把你的完整的 SQL 贴上来吧,我这边试试看

select a.OccurDate,
a.NodeCode,
b.DeptDesc,
b.DeptName,
left(a.CategoryCode,1) as PatentCateCode,
a.CategoryCode,
a.Sale,
a.SaleCost,
a.SaleGrossProfit,
a.SaleGPRate,
a.EndCost,
a.SaleCount,
c.AvgSaleCost ,
c.AvgEndCost,
c.AvgEndCost/Case when c.AvgSaleCost=0 then null else c.AvgSaleCost end as TurnoverDays
from tbEaseTempCategory a(nolock)
inner join
tbEaseStore b(nolock) on a.NodeCode = b.DeptCode
inner join
(
select NodeCode,CategoryCode ,avg(SaleCost) as AvgSaleCost, avg(EndCost) as AvgEndCost from tbEaseTempCategory(nolock) where OccurDate between ‘${开始日期}’ and ‘${结束日期}’ and (NodeCode IN (${店代码})) group by NodeCode,CategoryCode
) c on a.NodeCode = c.NodeCode and a.CategoryCode = c.CategoryCode
where a.OccurDate between ‘${开始日期}’ and ‘${结束日期}’
and (a.NodeCode IN (${店代码}))
and (left(a.CategoryCode,1) IN (${类别码1}))
and (a.CategoryCode IN (${类别码3}))

试的怎么样?
能解决,传参的 in 的问题码?

用 in ,传参的问题。是否能解决?
影响很大,数据较多的时候,仅通过过滤组件筛选,总是内存溢出。

我这边没复现出来,你在群里找下我呢,万梓良,加我下私聊远程看看。

收到,已加微信