ホームページ  >  記事  >  データベース  >  MySQL で最大レコード数を検索する際の「グループ関数の使用が無効です」エラーを解決するにはどうすればよいですか?

MySQL で最大レコード数を検索する際の「グループ関数の使用が無効です」エラーを解決するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-25 03:35:02864ブラウズ

How to resolve

MySQL での最大レコード数の検索

MySQL で、max(count(*)) を使用して最大レコード数を検索しようとすると、集計関数を使用すると、「グループ関数の使用が無効です」というエラーが発生する場合があります。この問題を解決するには、クエリを変更して最大数を正しく決定する必要があります。

提供されたクエリ内:

select max(count(*)) from emp1 group by name;

グループ関数 count(*) が最大数内で使用されています。関数の結果、エラーが発生します。これを修正するには、クエリを次のように変更します。

SELECT NAME, 
       COUNT(*) as c 
FROM table 
GROUP BY name 
ORDER BY c DESC LIMIT 1

このクエリは、最初に name 列の一意の値ごとにレコード数を計算し、そのカウントを c という名前の新しい列に割り当てます。次に、名前列ごとに結果をグループ化し、c 列に基づいて降順に並べ替えて、一意の名前の最大数を含む最初の行のみを取得します。

以上がMySQL で最大レコード数を検索する際の「グループ関数の使用が無効です」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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