AIで学ぶ中級SQLクエリ
Jasmin Ludolf
Senior Data Science Content Developer
プロンプト: 各年ごとに、予算あり・予算なしの映画本数を表示する
SELECT
release_year,
COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964 |10 |0 |
|1969 |9 |1 |
...

プロンプト: 各年ごとに、予算あり・予算なしの映画本数を表示する
SELECT
release_year,
COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964 |10 |0 |
|1969 |9 |1 |
...
1としてカウントされるプロンプト: 各年ごとに、予算あり・予算なしの映画本数を表示する
SELECT
release_year,
SUM(CASE WHEN budget IS NOT NULL THEN 1 ELSE 0 END) AS films_with_budget,
SUM(CASE WHEN budget IS NULL THEN 1 ELSE 0 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964 |10 |0 |
|1969 |9 |1 |
...
プロンプト: 各年ごとに、予算あり・予算なしの映画本数を表示する
SELECT
release_year,
COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
NULLはfilms_without_budgetに含まれるWHEREで絞り込むプロンプト: 2000年以降で予算データがあり本数が5本以上の各年について、予算が100万超を高予算、100万以下を低予算に分類し、各カテゴリの件数を年順で上位10件表示する
SELECT release_year,COUNT(CASE WHEN budget > 1000000 THEN 1 END) AS high_budget_count, COUNT(CASE WHEN budget <= 1000000 THEN 1 END) AS low_budget_countFROM filmsWHERE release_year > 2000 AND budget IS NOT NULLGROUP BY release_yearHAVING COUNT(*) >= 5ORDER BY release_year LIMIT 10;
$$
$$
$$
$$

AIで学ぶ中級SQLクエリ