開始使用免費開始

相關子查詢入門

相關子查詢是會參照主查詢中一個或多個欄位的子查詢。相關子查詢必須依賴主查詢的資訊才能執行,因此無法獨立運行。

在 SQL 中,相關子查詢會對主查詢所取得的每一列資料各評估一次——這比起一般子查詢需要更多的運算資源與時間。

在這個練習中,你將使用相關子查詢找出各國比賽中分數的極端離群值——高於平均分數的 3 倍!

本練習屬於課程

SQL 資料操作

檢視課程

練習說明

  • WHERE 中啟動子查詢,先計算主客隊進球數的「平均值」。
  • 補上子查詢中的欄位參照,讓 mainsub 資料表中的 country_id 能正確對應。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

SELECT 
	main.country_id,
    main.date,
    main.home_goal,
    main.away_goal
FROM match AS main
WHERE 
	-- Filter the main query by the subquery
	(home_goal + away_goal) > 
        (SELECT AVG((___ + sub.away_goal) * 3)
         FROM match AS sub
         -- Join the main query to the subquery with country_id in WHERE
         WHERE main.___ = sub.___);
編輯並執行程式碼