基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [令和元年秋午前] [令和元年秋午後]

令和元年 秋期 基本情報技術者 午前 問26
問26   SQL文のSELECT

 “得点”表から,学生ごとに全科目の点数の平均を算出し,平均が 80 点以上の学生の 学生番号とその平均点を求める。 a に入れる適切な字句はどれか。ここで,実線の下線は主キーを表す。

 得点( 学生番号 科目 ,点数)  [SQL 文〕

  

ア 科目 HAVING AVG(点数) >= 8Ø

イ 科目 WHERE 点数 >= 8Ø

ウ 学生番号 HAVING AVG(点数) >= 8Ø

エ 学生番号 WHERE 点数 >= 8Ø


解答←クリックすると正解が表示されます

解説

 SQL が実行される順序は次ののような順番になっている。

 FROM → WHERE → GROUPBY → HAVING → SELECT → ORDERBY

 つまり、GROUPBY でグルーピングする前に抽出するのが、WHERE 句で GROUPBY でグルーピングした後に抽出するのが HAVING 句になる。

 この問題では、「学生ごとに全科目の点数の平均を算出し,平均が 80 点以上の学生」を 抽出するので HAVING 句を使用する「ウ」が正解である。


[←前の問題] [次の問題→] [問題一覧表] [分野別] [キーワード索引] [基本情報技術者試験TOP ]