我有带有字段 user1 和 user2 的表 A 和带有 user3 和 user4 对的表 B。
我希望能够从表 A 中找到 user1/user2 组合也在表 B 中的任何行。
顺序无关紧要。例如,user1=Mike、user2=Joe 的表 A 将匹配 user3=Joe 和 user4=Mike 的表 B。
我有带有字段 user1 和 user2 的表 A 和带有 user3 和 user4 对的表 B。
我希望能够从表 A 中找到 user1/user2 组合也在表 B 中的任何行。
顺序无关紧要。例如,user1=Mike、user2=Joe 的表 A 将匹配 user3=Joe 和 user4=Mike 的表 B。
我可能只是or
在连接中使用显式:
select user1, user2
from tableA join tableB on
(user1=user3 and user2=user4) or
(user1=user4 and user2=user3)
......但是带着一粒盐。我被指责过度使用连接,可能至少有一点理由。
select a.user1, a.user2 from a, b
where (a.user1 == b.user3 and a.user2 == b.user4)
or (a.user1 = b.user4 and a.user2 = b.user3);