問題
GROUP BY 句の目的はどれか。
選択肢
- 1ア 行を並び替える
- 2イ 特定の列の値ごとに行をグループ化して集計する
- 3ウ 重複行を削除する
- 4エ 条件を指定する
正解
2. イ 特定の列の値ごとに行をグループ化して集計する
詳しい解説を見る解説を閉じる
解説
GROUP BY句は、指定した列の値が同じ行どうしを1つのグループにまとめ、グループごとにSUM・COUNT・AVGなどの集計関数を適用するために使用する。よってイが正解である。例えばSELECT 部門, COUNT(*) FROM 社員 GROUP BY 部門 とすれば、部門ごとの人数が1行ずつ得られる。アの行の並び替えはORDER BY句、ウの重複行の削除はSELECT文のDISTINCT指定、エの行の抽出条件の指定はWHERE句の役割であり、いずれもGROUP BYの目的ではない。なお、グループ化した後の集計結果に対して条件を付ける場合は、WHERE句ではなくHAVING句を用いる点に注意が必要である。基本情報技術者試験では、WHERE(グループ化前の行の絞り込み)とHAVING(グループ化後の絞り込み)の適用順序と使い分けが頻出ポイントである。
一問一答
科目A 180問+科目B 60問