请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

卍小蚂蚁卍
初级会员   /  发表于:2022-11-2 09:26  /   查看:1686  /  回复:6
5金币
如题,当多选框的字段作为条件被查询时,多选框有两个以上内容时,无法被作为条件查询
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

6 个回复

最佳答案
最佳答案
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-11-2 09:26:29
来自 7#
卍小蚂蚁卍 发表于 2022-11-8 14:38
你这种有点复杂,能否就案例完成操作,我学习着改?

参考:



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
店小二
初级会员   /  发表于:2022-11-2 10:21:47
2#
看了你的工程,可以先理一下逻辑:
【1】
这里你用工艺表中的空间ID关联了空间表中的空间ID





你工艺表中的空间ID如下



而你空间表中空间ID如下:


唯一相等能关联上的空间ID只有值为1的那一条数据。

方便理解,我们可以直接在页面上放个表格,用工艺表的空间ID去关联空间表的空间ID,来看下得到的记录只有空间ID为1的一条记录而已


【2】
之后再来看你的查询条件,需要关联后的空间ID,按照第一步的分析,也就只有空间ID为1的。
在G5里面,那么G5也就只有等于1的情况下才能查询出内容





你这里的逻辑参考着再理清楚下。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-11-2 11:32:38
3#
本帖最后由 Chelsey.Wang 于 2022-11-2 11:44 编辑

您好,您这里使用的是“在里面”的查询条件:

当G5=1时,工艺表的所有记录中,只有第一条满足该条件,因此查询结果只有这一条记录。
“在里面”的示例1:
A=1,B=1,2,3
A在B里面,判定结果为是;B在A里面判定结果为否(您目前设置的就是这个逻辑,判断多项是否在少项的里面,因此大多数记录都不在里面)。
“在里面”的示例2:
A=1,B=1
A在B里面,判定结果为是;B在A里面判定结果也为是(因此工艺表中第一条记录满足该条件,可以被查出来)



猜测您可能是想要实现下图中这样的效果:

如果是这样的话需要通过SQL来查询,然后将查询的结果返回前端:
帮你打开活字格更神奇的功能:一百零六,多参数查询,执行Sql命令in函数下岗 - 活字格专区 - 专题教程 - 葡萄城产品技术社区 (grapecity.com.cn)
前端可以使用EL-选择器,接收返回的json,作为下拉框选项的数据源
PC组件包—Element Plus - 葡萄城市场 (grapecity.com.cn)



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
卍小蚂蚁卍
初级会员   /  发表于:2022-11-7 11:50:14
4#
问题已经解决:一样的案例,重新做了一遍,把“在里面”改成“包含指定字符”,被查询的字段改成“文本”就达到效果了。
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-11-7 14:11:41
5#
本帖最后由 Chelsey.Wang 于 2022-11-7 14:12 编辑
卍小蚂蚁卍 发表于 2022-11-7 11:50
问题已经解决:一样的案例,重新做了一遍,把“在里面”改成“包含指定字符”,被查询的字段改成“文本”就 ...

包含指定字符的话会遇到这种情形:
如果选择1,所有包含字符串"1"的结果都会被查询出来,比如:1、10、11、12...
如果您的列表中不超过10个的话可以使用“包含指定字符串”这种方式来查询,如果列表中有10条及以上的记录还是建议使用楼上的解决方法~

回复 使用道具 举报
卍小蚂蚁卍
初级会员   /  发表于:2022-11-8 14:38:50
6#
Chelsey.Wang 发表于 2022-11-7 14:11
包含指定字符的话会遇到这种情形:
如果选择1,所有包含字符串"1"的结果都会被查询出来,比如:1、10、1 ...

你这种有点复杂,能否就案例完成操作,我学习着改?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部