我有兩個表,都具有相同數量的列,它們都沒有任何主鍵,如下所示:
表A
| 名稱 | 排行 | 型別 | 類別 | 額定 |
|---|---|---|---|---|
| M1 | 1 | 喜劇 | 電影 | G |
| M2 | 2 | 行動 | 系列 | PG |
表B
| 名稱 | 排行 | 型別 | 類別 | 額定 |
|---|---|---|---|---|
| MX1 | 44 | 驚悚 | 系列 | G |
| M2 | 2 | 行動 | 系列 | PG |
我需要從兩個表中獲取不常見的記錄,其中 Ranking 和 Name 組合對它們來說是唯一的。
我曾嘗試使用左右連接,但它為我提供了任一表中的所有記錄。我在這里的優先事項是只獲取不常見的記錄,如下所示:
| 名稱 | 排行 | 型別 | 類別 | 額定 |
|---|---|---|---|---|
| M1 | 1 | 喜劇 | 電影 | G |
| MX1 | 44 | 驚悚 | 系列 | G |
uj5u.com熱心網友回復:
您可以聯合兩個外部聯接。例如:
select a.*
from a
left join b on a.name = b.name and a.ranking = b.ranking
where b.name is null
union all
select b.*
from b
left join a on a.name = b.name and a.ranking = b.ranking
where a.name is null
uj5u.com熱心網友回復:
嘗試使用內連接
SELECT *
FROM table_a
INNER JOIN table_b ON table_a.name = table_b.name AND table_a.ranking = table_b.ranking;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/395389.html
上一篇:mining
