ホームページ >データベース >mysql チュートリアル >SQL の集計関数の数に基づいてグループをフィルタリングする方法

SQL の集計関数の数に基づいてグループをフィルタリングする方法

DDD
DDDオリジナル
2025-01-02 20:46:40707ブラウズ

How to Filter Groups Based on Aggregate Function Counts in SQL?

集計関数値によるグループ化とフィルタリング

結果をグループ化し、行数でフィルタリングする必要があるシナリオが発生する場合があります。各グループで。提案されたクエリ SELECT * FROM mytable WHERE COUNT(*) > 1 GROUP BY 名は構文的に正しくありません。目的の機能が強調表示されています。

これを実現するには、集計関数に条件を適用できる HAVING 句を使用できます。次の変更されたクエリは目的を達成します:

SELECT name, COUNT(*)
FROM mytable
GROUP BY name
HAVING COUNT(*) > 1

このクエリ内:

  • SELECT name, COUNT(*): 名前列とすべての行の数を選択します。各グループは COUNT(*).
  • FROM mytable: グループ化およびフィルターするテーブルを指定しますfrom.
  • GROUP BY name: 結果を名前列ごとにグループ化します。
  • HAVING COUNT(*) > 1: 行数が 1 より大きいグループのみを含めて、グループ化された結果をフィルターします。

このクエリは、数が 1 を超えるすべてのグループの名前と数を取得し、識別できるようにします。値の出現に基づいてフィルタリングします。

以上がSQL の集計関数の数に基づいてグループをフィルタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。