平成22年 春期 基本情報技術者 午後 問03
問03 5問選択関係データベースに関する次の記述を読んで,設問1〜4に答えよ。 ある中学校では,これまで表計算ソフトを使用して管理していた試験の成績を データベース化することになった。この中学校に在籍している,又は過去に在籍したことが ある生徒及び教員の情報を管理するデータベースは既に運用中であり,これらと連携させて運用する。 現在運用中のデータベースの構造は図1のとおりである。下線付きの項目は主キーを表す。
図1 現在運用中のデー夕ベースの構造 この中学校は,1年度が3期に分かれており,それぞれの期中に中間試験と期末試験を実施している。 試験科目は,国語,数学,英語,理科,社会の5科目である。また,試験は学年別, 科目別に統一した問題で行われている。 設問1 成績を管理するデータベースの構造について,案A及び案Bが提案された。 次の記述中の に入れる正しい答えを, 解答群の中から選べ。 案A 生徒番号,年度,試験 ID を主キーとして管理する。 案B 生徒番号,年度,試験 ID,科目 ID を主キーとして管理する。 データベースを設計する上で,拡張性の考慮は重要である。その点,案Bは 案Aと比較して に対して柔軟に対応することができる。 その反面,表の増加に伴い,データを検索する際の SQL 文が複雑になりやすく,また, 1人の生徒の1年間の成績を格納するために必要な成績表のレコード件数は, 案Aでは 件で済むが, 案Bでは 件となる。扱うデータの総量にもよるが, 長期の運用を考えた場合,これらの点はデータ操作時の性能にも影響を与えるおそれがある。 データベースの設計においては,運用時の利用形態を想定した上で,操作性, 拡張性,実行性能などを多角的に評価する必要がある。この中学校では操作性を 重視して案Aを採用した。 a に関する解答群 ウ 試験科目の増減 エ 生徒の増減 b,c に関する解答群 オ 24 カ 30 キ 48 ク 60
設問2 2009 年度1学年の2学期中間試験を対象に,生徒ごとの全科目合計点を求め, 降順に整列して表示する。次の SQL 文の に入れる正しい答えを, 解答群の中から選べ。
SELECT 生徒表.氏名, クラス, 国語+数学+英語+理科+社会 解答群 AND 試験表.試験名 = '2学期中間'
イ 履歴表.年度 = 2009 AND 履歴表.学年 = 1
ウ 履歴表.年度 = 2009 AND 履歴表.学年 = 1
エ 履歴表.年度 = 2009 AND 履歴表.学年 = 1
設問3 2008 年度1学年を対象に,1年間に実施したすべての試験の各科目の平均点を クラスごとに求め,担任教員の氏名とともに表示する。次の SQL 文の に入れる正しい答えを,解答群の中から選べ。
SELECT クラス, 教員表.氏名, AVG(国語), AVG(数学), AVG(英語), 解答群 AND 履歴表.教員番号 = 教員表.教員番号 AND 履歴表.年度 = 2008 AND 履歴表.学年 = 1 GROUP BY クラス,教員表.氏名
イ 履歴表.生徒番号 = 成績表.生徒番号
ウ 履歴表.生徒番号 = 成績表.生徒番号
エ 履歴表.生徒番号 = 成績表.生徒番号
設問4 生徒“情報太郎”の成績を,試験ID の昇順に表示する。次の SQL 文の に入れる正しい答えを,解答群の中から選べ。 なお,生徒“情報太郎”が複数人いた場合は,過去に在籍したことがある生徒も 含めて生徒番号の昇順に表示する。
SELECT 生徒表.生徒番号,成績表.年度,試験名,国語,数学,英語, 解答群 AND 成績表.試験ID = 試験表.試験ID AND 生徒表.氏名 = '情報太郎'
イ 生徒表.生徒番号 = 成績表.生徒番号
ウ 成績表.生徒番号 = (SELECT 生徒番号 FROM 生徒表 WHERE 氏名 = '情報太郎')
エ 成績表.生徒番号 = (SELECT 生徒番号 FROM 生徒表 WHERE 氏名 = '情報太郎' [←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
|