永洪社区

标题: 下拉多选,参数传递值超过1000怎么处理 [打印本页]

作者: yh_KEMPcU98    时间: 前天 14:23
标题: 下拉多选,参数传递值超过1000怎么处理
下拉多选,参数传递值超过1000怎么处理

作者: yhbi老6了    时间: 前天 14:26
这个是数据库sql那边返回的报错吧?你做了什么过滤?还是写了存储过程?
作者: yh_KEMPcU98    时间: 前天 14:31
yhbi老6了 发表于 2024-12-17 14:26
这个是数据库sql那边返回的报错吧?你做了什么过滤?还是写了存储过程?

--and a.d_good_no  in  <产品>?{产品}</产品> ,这个产品参数在下拉列表中选择全选就报错,传递的参数太多了,一般怎么处理下拉列表全选值过多的问题
作者: yhdata_lyaa    时间: 前天 14:34
一般来说,传递的参数值个数不能超过1,000个。
你做了什么操作后报错的
作者: yh_KEMPcU98    时间: 前天 14:36
yhdata_lyaa 发表于 2024-12-17 14:34
一般来说,传递的参数值个数不能超过1,000个。
你做了什么操作后报错的

默认值设为全选就报错
作者: Efheih    时间: 前天 14:38
这种情况使用普通的数据集会报错
可以使用数据集市做报表
作者: yhbi老6了    时间: 前天 14:42
对,可以参考楼上老师的。要么使用mpp数据集,mpp数据集允许的in数量多些。
或者做层级筛选优先,缩小数量,比如先选大类。
又或者如果觉得数据库没有压力,可以考虑让dba调参数
作者: yhdata_lyaa    时间: 前天 14:42
这个字段值太多了,不建议作为筛选项。建议可以在数据集先做一定筛选,加入其他维度进行筛选。

当使用IN列表时,列表中的项目数量超过了设置的最大限制(通常是1000个项目)。
如果列表项目确实必须多于1000个,考虑分批次执行查询,每次使用不超过1000个项目的列表。
临时提高IN列表的限制,设置MAX_STRING_SIZE_IN_LIST参数为更高的值(这通常不建议,因为会影响整个数据库的性能)。

除了数据库,产品也限制了过滤器里 其中一个 拼sql时 in 的值的个数,默认1000;
超过1000,执行时给出提示:过滤条件为“其中一个”时,传递的参数值个数不能超过1,000个。




欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4