必ず受かる情報処理技術者試験

問題30

ポケットスタディ 基本情報午後・要点整理―即効!7つの知識 (情報処理技術者試験)

“社員"表と“人事異動"表から社員ごとの勤務成績の平均を求める適切なSQL文はどれか。ここで、求める項目は、社員コード、社員名、勤務成績(平均)の3項目とする。

SELECT 社員.社員コード,社員名,AVG(勤務成績) AS “勤務成績(平均)”
   FROM 社員,人事異動
   WHERE 社員.社員コード = 人事異動.社員コード
   GROUP BY 勤務成績
SELECT 社員.社員コード,社員名,AVG(勤務成績) AS “勤務成績(平均)”
   FROM 社員,人事異動
   WHERE 社員.社員コード = 人事異動.社員コード
   GROUP BY 社員.社員コード,社員.社員名
SELECT 社員.社員コード,社員名,AVG(勤務成績)/COUNT(勤務成績) AS “勤務成績(平均)”
   FROM 社員,人事異動
   WHERE 社員.社員コード = 人事異動.社員コード
   GROUP BY 社員.社員コード,社員.社員名
SELECT 社員.社員コード,社員名,MAX(勤務成績)/COUNT(*) AS “勤務成績(平均)”
   FROM 社員,人事異動
   WHERE 社員.社員コード = 人事異動.社員コード
   GROUP BY 社員.社員コード,社員.社員名

解答・解説を見る

解答:イ

× GROUP BY 句の誤りである。GROUP BY 句には社員コード,社員名が指定される。
正しい。
× 平均(AVG(勤務成績))を行数(COUNT(勤務成績))で割る必要はない。
× 最大値(MAX(勤務成績))を行数(COUNT(勤務成績))で割る必要はない。
前の問題 次の問題

Copyrithg naruha