IPA過去問ドリル

平成21年度 秋期 基本情報技術者試験 午前 問33

テクノロジ/データベース

SQL の構文として,正しいものはどれか。

出典:平成21年度 秋期 基本情報技術者試験 午前 問33

正解:イ

解説

AVG関数のような集計関数を使い,注文日ごとの平均を求めるには,GROUP BY句で注文日ごとにグループ化する必要があります。GROUP BY句がないままAVGなどの集計関数と非集計列(注文日)を同時に選択することはできません。

選択肢ごとの解説

  • 誤り。GROUP BY句がないため,注文日ごとの集計にならず,構文としても不適切です。
  • 正しい。注文日でGROUP BYし,各グループごとにAVG(数量)を求める構文であり,正しいSQLです。
  • 誤り。AVG(SUM(数量))のように集計関数を入れ子にする書き方は認められていません。
  • 誤り。WHERE句の中でSUM(数量)のような集計関数を条件に使うことはできず,集計結果に対する条件はHAVING句を使う必要があります。
基本情報技術者の過去問を演習モードで解く