双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

多字段 如何 使用 in?

zww19830120 zww19830120 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
TABLEA的字段均为varchar

ID ColA ColB Value
1 A 1 "A1"
2 A 2 "A2"
3 B 3 "B3"
4 B 4 "B4"

……

传入的值为:A,1,B,4,…… 这样的数组
请问如何组织SQL语句进行查询?

单一条件的话

SELECT * FROM TABLEA where ColA='A' and ColB='1'
UNION ALL
SELECT * FROM TABLEA where ColA='B' and ColB='4'
UNION ALL
……

或者

SELECT * FROM TABLEA where (ColA + "|" + ColB) in ('A|1','B|4',……)


这样都需要遍历数组元素进行一定组合

没有更好的方式 以一个sql语句搞定
如:
采用类似 ColA in ('A','B') ColBin ('1','4') 和
select a.* from TABLEA as Temp1,(select ID from TABLEA where ……) as Temp2 where a.ID=b.ID的方式


求教!谢谢

...全文
评论 8
收藏 已收藏
分享
返回顶部
zww19830120
疑难问题 22,298 成员 121,727 内容