回答

收藏

WHERE col1,col2 IN(')[使用复合主键的SQL子查询]

技术问答 技术问答 65 人阅读 | 0 人回复 | 2023-09-13

给定foo具有复合主键的表(a,b),是否存在用于编写查询的合法语法,例如:  j' w: L( b6 W' G# u: S
SELECT ... FROM foo WHERE a,b IN (SELECT ...many tuples of a/b values...);
( e! `* B: q* m% A' {3 H) p# F6 ZUPDATE foo SET ... WHERE a,b IN (SELECT ...many tuples of a/b values...);
7 ?* x9 J  C* A4 y9 _+ d- d, \# u如果这是不可能的,并且您无法修改架构,那么如何执行上述等效操作?: a. Q, A( V0 p1 ^
我还将在此处使用术语“复合主键”,“子选择”,“子选择”和“子查询”,以表示这些别名的搜索结果。
% `' m) ~& e0 Y$ l  t编辑 :我对标准SQL的答案以及将与PostgreSQL和SQLite 3一起使用的答案感兴趣。
2 c0 G( d3 a/ A& v& x" x( a# w8 b) @                + q6 Z7 L4 E' k0 j3 H/ J2 T
解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则