使用清單式子查詢進行篩選
這個練習的目標是產生一份從未在主場城市比賽過的球隊清單。你會使用子查詢,從未過濾的 match 資料表產生唯一的 hometeam_ID 清單,並在 team 資料表的 team_api_ID 欄位中將這些值「排除」。
除了使用單一值(標量)子查詢進行篩選之外,你也可以在子查詢中建立一份數值清單,根據一組較複雜的條件來篩選資料。這類子查詢會為主查詢產生「單欄位參考清單」。只要清單中的數值能對應到主查詢資料表中的某一欄位,你就不需要使用 JOIN——即使這份清單來自另一個資料表也一樣。
本練習屬於課程
SQL 資料操作
練習說明
- 在
WHERE子句中建立一個子查詢,從match資料表擷取所有唯一的hometeam_id值。 - 從
team資料表選取team_long_name和team_short_name。在主查詢中將子查詢回傳的所有值「排除」。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
SELECT
-- Select the team long and short names
___,
___
FROM ___
-- Exclude all values from the subquery
WHERE team_api_id ___ ___
(___ DISTINCT ___ FROM ___);