我有两个表,都Table1
和Table2
,共享4列名为C1, C2, C3 and C4
;这些列存储从1到56的数字序列;同样,一行中不能有重复的数字,并且数字总是从最低到最高。
例子:
表格1
C1 C2 C3 C4
1 6 10 44
5 7 23 50
45 46 52 56
现在,我必须检查出现在两个表中的序列,而不是检查四列上的联接
select *
from table1 a
inner join table 2 on a.c1 = b.c1 and a.c2 = b.c2 and a.c3 = b.c3 and a.c4 = b.c4
还有另一种方法吗?
是的,有一种不同的方法,可以使用INTERSECT。
SELECT c1, c2, c3, c4
FROM table1
INTERSECT
SELECT c1, c2, c3, c4
FROM table2
注意:这不会告诉您找到匹配项多少次,它将显示表之间的唯一匹配项
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句