
82
レコードをグループ化する
3-18
ことができます。本の情報が保存されているテーブ
ルを例にすると、カテゴリごとにグループ化することで、重複を除いたカ
テゴリ一覧が取得でき、さらにカテゴリごとの本の数を集計するといった
ことが可能です。また、登録日ごとにグループにすれば、日付ごとの入荷
点数を集計するといったこともできます。
レコードをグループ化するには「GROUPBY」を使います。図3-40
は「users」テーブルの「gender」カラムでグループ化する例です。この
ように「GROUPBY」の後ろにグループ化したいカラム名を指定します。
また、「SELECT」でグループ化したカラムである「gender」を指定してい
るので、結果は「man」と「woman」の2 つが返ってきます。「man」のレ
コードはテーブルに3 件登録されていますが、グループ化しているので、
結果表示では重複した値は1つの行でまとめて取得されます。
3-15 で紹介した「COUNT」関数を使って、グループごとのレコード数
を取得することができます。図3-41 は「users」テーブルの「gender」カ
ラムでグループ化し、グループごとのレコードの数を取得する例です。実
行結果は、「SELECT」で指定した「gender」カラムの値と、「COUNT(*)」
によってレコード数の値が表示されます。今回は「man」