平成 19 年度「データベース」定期試験問題
国島丈生
2007-08-02
1 関係代数、 SQL
西暦20xx年、日本史に残る衝撃的な事実が明らかになった*1。戦国時代に、国を治めるリーダを決める選 挙が行われていたことを示す資料が発見されたのである。クニシマ教授は、発見された選挙結果を整理し、関 係データベースを用いてさまざまな分析をしようと思い立った。図1に、選挙結果を整理した表を示す。下線 を引いてある属性はその表の主キーを表す。
1. これらの表の中で外部キー制約があれば、すべて指摘せよ。(10点)
2. 表「得票」の主キーはどのように定めれば良いか。理由を添えて答えよ。(10点) 3. 以下の問合せを指定された方法で記述せよ。問合せの結果は不要である。(5点×8)
(a)ホトトギス党の候補の氏名をすべて求める(関係代数、SQL)
(b)表「選挙区」を、有権者数の多い順に出力する(SQL)
(c)各候補者について、氏名と、出身地の有権者数を求める(関係代数、SQL)
(d)総得票数(全選挙区の得票数の合計)が40000票より多い候補者について、氏名と総投票数を出力 する(SQL)
(e)甲斐より有権者数の多い選挙区の区名を求める(関係代数、SQL)
候補
氏名 出身 政党
織田信長 尾張 ホトトギス党 徳川家康 三河 ホトトギス党 武田信玄 甲斐 風林火山党
選挙区
区名 有権者数
尾張 35000
三河 15000
甲斐 25000
京都 50000
得票
氏名 区名 票数 織田信長 尾張 20000 徳川家康 尾張 15000 織田信長 三河 3000 徳川家康 三河 10000 武田信玄 甲斐 20000 織田信長 京都 20000 徳川家康 京都 5000 武田信玄 京都 20000 図1 選挙結果の表
*1以下、本設問に出てくる事件、登場人物はすべて架空のものである。
2 表の設計
以下に示すのは、ある大学の開講科目とその教科書に関する表である。教科書番号とは、この大学が教科書 に独自につけた番号で、教科書ごとに異なる番号がつけられることになっている。
科目番号 科目名 教科書番号 教科書 出版社
1 データベース 1 サルでもわかるデータベース サル出版 2 論理回路 2 ANDとORの不思議な世界 論理堂 3 データ工学 1 サルでもわかるデータベース サル出版 4 ロボット工学 3 AIBOと遊ぼう YNOS出版 1. この表は第1正規形か。理由を添えて答えよ。(10点)
2. この表は第2正規形か。理由を添えて答えよ。(10点) 3. この表は第3正規形ではない。その理由を答えよ。(10点) 4. この表を第3正規形の表(複数)に分解せよ。(10点)