我有两张桌子。表中有两列共同的列。表1是父表,表2是主表的子集。我想获得他们没有共同的行。
前:
预期结果:a,b,d
答案 0 :(得分:1)
这样可以得到你想要的东西。
SELECT t1.val
FROM table1 t1, table2 t2
WHERE t1.val != t2.val
输出:
val
a
b
d
答案 1 :(得分:1)
尝试此解决方案,您不需要任何额外的普通查询
SELECT tab1.val
FROM table1 tab1, table2 Tab2
WHERE tab1.FieldName <> tab2.FieldName
答案 2 :(得分:1)
如果您的DBMS支持MINUS声明,您可以使用:
SELECT COL1
FROM TABLE1
MINUS
SELECT COL1
FROM TABLE2
请注意,减号是位置。你不会在切换两个SELECT语句时获得相同的结果。
答案 3 :(得分:0)
Select X.ID
From Table1 X
Right Join Table2 Y ON (X.ID = Y.ID)
Where Y.ID IS NULL
Table1和Table2有两个表,其中参考列为ID。上面的查询显示了表1中显示不匹配ID的输出。
答案 4 :(得分:0)
试试这个.... 将c作为共同栏目......
SELECT *
FROM Table1
WHERE c NOT IN
(SELECT c FROM Table2);