• ベストアンサー

GROUP BY 句を使う時のWHERE と HAVINGの使い方の違いがいまいちよく分かりません

SQL文でグループ化して、かつ抽出条件を 指定する時、WHERE を使うか HAVING を 使うかの違いがよく分かりません・・・。 どなたか分かりやすく教えて頂けませんでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • MovingWalk
  • ベストアンサー率43% (2233/5098)
回答No.2

こちらの前半部分に目を通してみてください。 http://www.atmarkit.co.jp/fnetwork/index_index.html#sql

参考URL:
http://www.atmarkit.co.jp/fnetwork/index_index.html#sql

その他の回答 (2)

  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.3

グループ関数(SUMやMAX,MIN等)を使う条件文を使用する場合HAVINGを使用します。 WHERE句の中ではグループ関数は使えません。

GBSGBS
質問者

お礼

分かりやすい回答ありがとうございます!

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

WHEREは、グループ化を行う前に抽出を行います。 HAVINGはグループ化した後に抽出を行います。 ってことで、HAVINGの方は、こんな書き方が出来たりします。 SELECT SUM(売上点数), 伝票ID FROM 本日の売上 GROUP BY 伝票ID HAVING SUM(売上点数) >= 10

関連するQ&A