我的 SQL 資料庫中有兩個表,Team并且Match. 每場比賽都有兩個團隊 ID - 一個用于host_team,一個用于guest_team。
我的問題是:我怎樣才能加入這兩個表來獲得匹配的資料,以及兩個host_team和guest_team一個唯一資料集中的完整資料?
團隊:
| ID | 姓名 |
|---|---|
| 1 | X |
| 2 | 是 |
比賽:
| ID | 主機 ID | 來賓ID |
|---|---|---|
| 1 | 1 | 2 |
最終資料集:
| 匹配 ID | 主機 ID | 主機名 | 來賓ID | 客人姓名 |
|---|---|---|---|---|
| 1 | 1 | X | 2 | 是 |
如果你能幫我解決這個問題,我將不勝感激:)
uj5u.com熱心網友回復:
剛離開加入 Team to Match 兩次
SELECT
match.match_id
, match.host_id
, host.name AS host_name
, match.guest_id
, guest.name AS guest_name
FROM Match AS match
LEFT JOIN Team AS host ON host.id = match.host_id
LEFT JOIN Team AS guest ON guest.id = match.guest_id
uj5u.com熱心網友回復:
無論哪種方式,您都需要查詢Team表兩次,一種方法是在適當的位置使用相關的行內選擇id
select m.Id as match_id,
m.host_id,
(select name from Team t where t.id=m.host_id) host_name,
m.guest_id
(select name from Team t where t.id=m.guest_id) guest_name,
from Match m
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/368671.html
