GROUP BY
以降のレコード数GROUP BY
を含む SQL SELECT
クエリを使用する場合、多くの場合、レコードの総数を計算することも必要になります。これを SQL ステートメントで直接行う方法は次のとおりです:
各グループ内のレコードの合計数を計算するには、COUNT
と GROUP BY
集計関数を使用するだけです。たとえば、users テーブルがあり、一意の町と各町のユーザー数をリストしたいとします。
<code class="language-sql">SELECT `town`, COUNT(`town`) FROM `user` GROUP BY `town`;</code>
このクエリは、一意の町の名前を表す town
と、各町のユーザーの総数を示す COUNT(town)
という 2 つの列を含むテーブルを返します。
さらに、GROUP BY
、MAX
、MIN
などの他の集計関数を COUNT DISTINCT
とともに使用できます。
更新:
すべての町のユーザーの合計数を取得することもできます。これを行うには、COUNT
集計関数を使用して変数を定義できます。
<code class="language-sql">DECLARE @numOfUsers INT; SET @numOfUsers = (SELECT COUNT(*) FROM `user`);</code>
その後、別の町と以前に定義した変数を選択できます:
<code class="language-sql">SELECT DISTINCT `town`, @numOfUsers FROM `user`;</code>
これにより、町のリストとユーザーの総数が表示されます。
以上がSQLでグループ内のレコードをカウントし、合計数を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。