SQL の基本 | DML: データ操作言語 | GROUP BY

GROUP BY 句は、同じ値を持つ行をグループ化するために使用する。

集計関数の話に戻る。SUM コマンドを使用してすべての Sales (販売) を計算したとする。ここで、それぞれの店舗 (Store_Name) の販売 (Sales) を計算するにはどうすればよいだろうか。この場合は 2 つのことを行う。まず、store_name と Sales の 2 つのフィールドを選択する。次に、sales を store_name ごとに計算する。構文は次のとおりである。

GROUP BY 構文

SELECT "フィールド1", SUM("フィールド2")
FROM "テーブル名"
GROUP BY "フィールド1";

たとえば、次のようにする。

store_information テーブル

store_name sales txn_date
Los Angeles 1500 Jan-05-2018
San Diego 250 Jan-07-2018
Los Angeles 300 Jan-08-2018
Boston 700 Jan-08-2018

次のようにコマンドを入力する。

SELECT store_name, SUM(sales)
FROM store_Information
GROUP BY store_name;

結果は次のとおりである。

store_name SUM(sales)
Los Angeles 1800
San Diego 250
Boston 700

複数のフィールドを選択し、そのうち少なくとも 1 つに関数の計算が含まれる場合は、GROUP BY コマンドを使用しなければならない。この場合、GROUP BY によって他のフィールドを確認する。つまり、関数が含まれるフィールドを確認した後、他の選択フィールドを GROUP BY 句に入れる。