開始使用免費開始

排除 CASE 敘述的錯誤

在上一個練習中,你可能注意到在我們的 case 敘述裡出現了數個 null 值,這代表程式碼可能有問題。

遇到這種情況,值得深入調查為什麼會出現這些 null 值。在本練習中,你會依序執行幾個步驟,找出問題並在需要的地方修改程式碼。

本練習屬於課程

SQL 報表製作

檢視課程

動手互動練習

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

-- Query from last exercise shown below.  Comment it out.
SELECT 
	sport,
    CASE WHEN weight/height^2*100 <.25 THEN '<.25'
    WHEN weight/height^2*100 <=.30 THEN '.25-.30'
    WHEN weight/height^2*100 >.30 THEN '>.30' END AS bmi_bucket,
    COUNT(DISTINCT athlete_id) AS athletes
FROM summer_games AS s
JOIN athletes AS a
ON s.athlete_id = a.id
GROUP BY sport, bmi_bucket
ORDER BY sport, athletes DESC;

-- Show height, weight, and bmi for all athletes
SELECT 
	____,
    ____,
    ____ AS bmi
FROM ____
-- Filter for NULL bmi values
WHERE ____;
編輯並執行程式碼