Khắc phục sự cố với câu lệnh CASE
Ở bài trước, bạn có thể đã thấy một số giá trị null trong câu lệnh CASE, điều này có thể cho thấy mã đang gặp vấn đề.
Trong những trường hợp như vậy, đáng để kiểm tra để hiểu vì sao các giá trị null xuất hiện. Trong bài này, bạn sẽ thực hiện một loạt bước để xác định vấn đề và chỉnh sửa mã khi cần.
Bài tập này là một phần của khóa học
Lập báo cáo trong SQL
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
-- 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 ____;