ログイン
問題9

HAVINGを使って条件を絞ってみよう!

これまで条件を絞る際はWHERE句を使用してきました。 HAVING句も同様に条件を絞る為のものです。 WHEREとの違いは分かりやすく「GROUP BY」の影響の前に条件適用されるか、後に条件適用されるかだけです。実際に使用して違いを理解しましょう!

アイコン画像

問題9:HAVINGを使って条件を絞ってみよう!

GROUP BYとHAVING句を使用して、合計金額が8000円以上の支出だけを表示させてください。

期待する画面を参考に作成しましょう。

ブラウザのアイコン期待する画面

解答の見本画像

タグアイコン解答ソースコード

              USE ninjacode;
SELECT 費目, SUM(支出) AS 費目別支出額
FROM 家計簿
GROUP BY 費目
HAVING 8000 <= 費目別支出額;
¥SQL¥
            

コメントのアイコン解説

HAVINGはGROUP BYの後に記述します。

今回の場合、費目ごとの支出合計金額が8000円以上のものだけを表示させるので、
比較演算子を使って「8000 <= 費目別支出額」とすればOKです。

WHERE句と指定方法が一緒なので容易に使用することができます。
GROUP BYを使用する場合の条件指定はWHEREではなく、HAVINGになるので間違えないように覚えておきましょう。
ログインして解答を見る

コメントのアイコン補足

HAVING句は、集計結果が全て揃った最後の段階で実行されます。
WHERE句とは異なり、集計関数を記述することが可能になります。

構文を暗記するよりも、意味を理解して覚えましょう!
SQLを学ぶなら現役エンジニア監修「甲賀コース」
キャンペーン

閉じる