mysql – 在两个表上使用相交?
作者:互联网
我试图找到所有四个表共有的行.
我试过用这个:
SELECT *
FROM TABLE1
INTERSECT
SELECT *
FROM TABLE2
INTERSECT
SELECT *
FROM TABLE3
INTERSECT
SELECT *
FROM TABLE4;
但是没有结果,我知道有些行符合这个要求.因为使用union而不是添加“order by”,我会看到来自不同表的四行具有相同的描述.
解决方法:
对所需字段使用INNER JOIN条件
例如:
SELECT
t1.*
FROM
TABLE1 t1
INNER JOIN TABLE2 t2
ON t1.field1 = t2.field1
AND t1.field2 = t2.field2
...
INNER JOIN TABLE2 t3
ON t1.field1 = t3.field1
AND t1.field2 = t3.field2
...
标签:mysql,database,sql,sql-server,ibm-midrange 来源: https://codeday.me/bug/20190520/1142121.html