データベーススペシャリスト暗記無料で始める

HAVING句とは?ハビングく

HAVING句とは、束ねたあとのまとまりに対して、どれを残すかの条件を書く句。条件に集約関数の結果を使えるのが特徴で、「件数が3以上」「合計が100万円を超える」のような、まとまってからでないと値が決まらない絞り込みを受け持つ。

最終更新:2026-10-06

試験情報

データベーススペシャリスト試験の頻出用語/午前II

データベースSPを最短で暗記・合格する →

背景

行を絞る条件はWHERE句があれば足りるように見える。ところが合計や件数はまとまりを作った後にしか決まらないので、WHERE句が評価される時点ではまだ値が存在しない。評価の順番が先か後かという理由だけで、条件を書く場所を2つに分ける必要が生じた。SQLの句が、書く順番と評価される順番で並びが違うのはこの事情による。

具体例

SELECT 商品分類, COUNT(*) FROM 受注明細 WHERE 受注日 >= '2026-04-01' GROUP BY 商品分類 HAVING COUNT(*) >= 3 と書けば、今期の明細に限ったうえで3件以上ある分類だけが残る。2つの句がそれぞれ別の仕事をしている。

試験での引っ掛け

WHERE句は束ねる前に1行ずつを絞り、こちらは束ねた後のまとまりを絞る。評価の順はFROM→WHERE→GROUP BY→HAVING→SELECT→ORDER BY。この順を押さえていれば、集約関数をWHERE句へ書けない理由も、SELECT句で付けた別名をこの句で使えない理由も、同じ1つの理由だと分かる。

関連用語

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

データベースSPを最短で暗記・合格する →

試験での特徴
  • 分野:午前II
  • WHERE句は束ねる前に1行ずつを絞り、こちらは束ねた後のまとまりを絞る。