クエリ関数(Query関数)の使い方 - GROUP BY & 集計関数Count

この記事では、クエリ関数(Query関数)でGroup Byと集計関数Countを使ってグループ毎の個数を算出する方法を勉強します。

QUERY関数の基礎についてはこちらの記事をご覧ください。
クエリ関数内のCountの使い方に関してはこちら

Group Byと集計関数Countは以下の様に使います。
=QUERY(範囲, "SELECT 見出しの列, COUNT(数えたい列) Group By グループ化したい列 ",見出しの行数)

「数えたい列」と「グループ化したい列」は通常同じ列になります。

以下の都市の人口データを例に見ていきます。表の中で、それぞれの都道府県がいくつあるかを算出しましょう。
都市の人口データ


まずは、範囲を指定しましょう。表の範囲A1 - C11を指定します。
=QUERY(A1:C11

範囲の指定


次にSELECTを用いて、見出しの列を指定します。今回は各都道府県の名前を表示させたいので、B列を指定します。
=QUERY(A1:C11, "SELECT B

見出しの行を指定



次に、COUNTを用いて、データの個数を数えたい列を指定します。Countの前には、コンマを書いて下さい。
都道府県がいくつあるのか数えたいので、B列を指定します。
=QUERY(A1:C11, "SELECT B, COUNT(B)
カウントする列を指定


そして、GROUP BYを用いて、どの列をグルーピングしたいかを指定します。各都道府県名をひとつのグループにしたいので、B列を指定します。
この際、自動で同一の文字列がグルーピングされます。
グルーピングしたい列を指定


最後に、見出しの行数を指定しましょう。見出しは1行なので、1と書きます。
見出しの行数を指定


すると、どの都道府県がいくつかあるかグループ毎の個数を算出されます。
結果


スプレッドシートをご覧になる場合はこちら