ホームページ > データベース > SQL > SQLでのhaveとwhereの使用法

SQLでのhaveとwhereの使用法

下次还敢
リリース: 2024-05-02 02:33:17
オリジナル
1223 人が閲覧しました

WHERE 句は、SELECT ステートメント内の行をフィルターし、行の条件に基づいて基になるデータをフィルターします。 HAVING 句は、GROUP BY ステートメント内のグループをフィルタリングし、集計結果に基づいてグループをフィルタリングします。主な違い: WHERE は個々の行を処理し、行の条件を評価します。HAVING はグループを処理し、グループの集計結果を評価します。WHERE は結果に含まれる行に影響し、HAVING は結果に含まれるグループに影響します。

SQLでのhaveとwhereの使用法

WHERE 句と HAVING 句は SQL で使用されます

WHERE 句と HAVING 句は SQL フィルタ データセットで使用されますが、これらは、処理コンテキストとターゲットが異なります。

#WHERE 句:

  • WHERE 句は、SELECT ステートメントで使用され、FROM の後の行をフィルターします。
  • 各行の条件に基づいて、基になるテーブルまたはビュー内の行を評価します。
  • 基になるデータをフィルタリングするために使用され、それによって最終結果にどの行が含まれるかに影響します。

例:

<code class="sql">SELECT * FROM employees WHERE salary > 50000;</code>
ログイン後にコピー

このクエリは、給与が 50,000 ドルを超えるすべての従業員を返します。

HAVING 句:

  • HAVING 句は、GROUP BY ステートメントでグループをフィルタリングするために使用されます。
  • 集計結果に基づいてグループを評価します。
  • これはグループをフィルタリングするために使用され、それによって最終結果にどのグループが含まれるかに影響します。

例:

<code class="sql">SELECT department, SUM(salary) AS total_salary
FROM employees
GROUP BY department
HAVING total_salary > 100000;</code>
ログイン後にコピー

このクエリは、給与総額が 100,000 ドルを超えるすべての部門の給与総額を返します。

主な違い:

  • 処理コンテキスト: WHERE 句は個々の行を処理しますが、HAVING 句はグループを処理します。
  • 評価対象: WHERE 句は単一行の条件を評価しますが、HAVING 句はグループの集計結果を評価します。
  • 結果への影響: WHERE 句は結果に含まれる行に影響し、HAVING 句は結果にどのグループが含まれるかに影響します。

以上がSQLでのhaveとwhereの使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート