加入收藏 | 设为首页 | 会员中心 | 我要投稿 南京站长网 (https://www.025zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 使用复合键查询WHERE_IN?

发布时间:2021-01-16 20:47:26 所属栏目:MsSql教程 来源:网络整理
导读:假设我有一个包含两部分组合键的表,以及4条记录,如下所示: KEY_PART_1 KEY_PART_2A 1B 1C 2C 3 我想编写一些动态SQL,只使用“WHERE IN”子句选择记录B,1和C,而不选择A,1或C,3. 有没有办法在没有临时表的情况下做到这一点? 这并不重要,但我们目前正在使用

假设我有一个包含两部分组合键的表,以及4条记录,如下所示:

KEY_PART_1 KEY_PART_2
A          1
B          1
C          2
C          3

我想编写一些动态SQL,只使用“WHERE IN”子句选择记录B,1和C,而不选择A,1或C,3.

有没有办法在没有临时表的情况下做到这一点?

这并不重要,但我们目前正在使用Oracle,并希望尽快转向PostgreSQL.

解决方法

此语法适用于Oracle和PostgreSQL:
SELECT *
  FROM table_name
 WHERE (key_part_1,key_part_2) IN ( ('B',1),('C',2) );

(编辑:南京站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读