初級システムアドミニストレータ試験情報 > 初級シスアド試験の既出問題 > 平成15年度秋期試験メニュー>問題と解説
初級シスアド 平成15年度秋期試験 問題(午後問4)
問4 書籍管理システムに関する次の記述を読んで,設問1〜3に答えよ。
P研究所では,学術書や論文集などの書籍を購入し,所員に貸し出している。貸出しなどの書籍の管理は,数年前に開発した書籍管理システムで行っている。現在のシステムでは,論文集を1冊の書籍として管理しているが,その中の個々の論文までは管理していない。
最近は,取り扱う書籍の中で論文集の占める割合が高まっており,論文単位で検索したいとの要望が多くなってきている。そこで,論文の情報も管理することにし,その検索機能(以下,論文検索機能という)を追加することになった。
論文の情報は,新たに作成した論文表で管理する。論文表追加後の書籍管理システムのデータベース構造は,図1のとおりである。
書籍表
ジャンル表
書籍番号 書籍名 著者 出版社 ジャンル番号
所員表
ジャンル番号 ジャンル名
貸出表
所員番号 所員名 論文表
貸出番号 書籍番号 所員番号 貸出日 返却予定日 返却日
注 下線は各表の主キーを表す。
書籍番号 論文番号 論文名 論文著者 発表年 キーワード
図1 論文表追加後のデータベース構造
ジャンルは,所員の研究分野に対応して区分されている。
貸出表の返却日には,初めNULLが入っており,書籍が返却されると返却日が登録される。
論文表の論文番号は,収録されている論文集の中で一意になる値が登録される。発表年には論文が発表された西暦年が登録され,キーワードには論文の内容に応じたキーワードが一つ登録される。
設問1 図2は,論文表追加後の書籍管理システムのE-R図である。図2中の[ ]に入れる適切な字句を,解答群の中から選べ。
設問1の正解例へ
設問2 論文検索機能に関する次の記述中の[ ]に入れる適切な字句を,解答群の中から選べ。
論文検索機能は,検索条件として入力された文字列(以下,[検索文字列]と表す)で論文表のキーワードを検索し,[検索文字列]とキーワードが完全に一致する論文の情報を表示する。収録されている論文集が貸出中の場合は,返却予定日を併せて表示する。
[検索文字列]で検索を行い,必要な情報を出力するために次のようなSQL文を作成したが,期待した結果が得られなかった。
SELECT 論文表.論文名,論文表.論文著者,論文表.発表年,書籍表.書籍番号,
書籍表.書籍名,ジャンル表.ジャンル名,貸出表.返却予定日
FROM 論文表,書籍表,ジャンル表,貸出表
WHERE 論文表.キーワード = [検索文字列]
AND 論文表.書籍番号 = 書籍表.書籍番号
AND 書籍表.ジャンル番号 = ジャンル表.ジャンル番号
AND 書籍表.書籍番号 = 貸出表.書籍番号
AND 貸出表.返却日 IS NULL
検証したところ,作成したSQL文では[ e ]ことが判明した。そこで,正しい結果を得るために,SQL文中の[ f ]と[ g ]の結合が外部結合の形になるようにSQL文全体を修正した。
eに関する解答群
ア 貸出中でない論文集に,返却予定日が表示される イ 貸出中の論文集に,ジャンルが表示されない ウ 貸出中の論文集に収録されている論文が表示されない エ 貸出中の論文集に収録されている論文だけしか表示されない
f,gに関する解答群
ア 貸出表 イ ジャンル表 ウ 書籍表 エ 論文表
設問2の正解例へ
設問3 論文検索機能の強化に関する次の記述中の[ ]に入れる適切な字句を,解答群の中から選べ。
論文検索機能を次のように強化し,使い勝手の向上を図ることにした。
(1) 一つの論文に複数のキーワードを設定できるようにし,設定する場合は論文表のキーワードにコンマで区切って登録する。 (2) [検索文字列]で論文表のキーワードと論文名をそれぞれ検索し,いずれかの項目の一部分でも[検索文字列]と一致していれば,その論文を表示対象とする。 (3) 論文を発表年で絞り込めるようにする。その場合,検索対象とする期間の最初の年(以下,[検索開始年]と表す)と最後の年(以下,[検索終了年]と表す)のどちらか,又は両方を指定して検索できるようにする。
【1】 [検索開始年]だけが指定されている場合,論文の発表年が[検索開始年]以降のものを表示対象にする。 【2】 [検索終了年]だけが指定されている場合,論文の発表年が[検索終了年]以前のものを表示対象にする。 【3】 [検索開始年]と[検索終了年]の両方が指定されている場合,両方の条件を満たすものを表示対象にする。
[検索文字列],[検索開始年],[検索終了年]の三つの検索条件が同時に指定されたとき,それらをすべて満たす論文を検索する条件は,次のとおりである。
(キーワードの一部分でも[検索文字列]に一致
[ h ]
論文名の一部分でも[検索文字列]に一致)
[ i ]
(発表年が[検索開始年][ j ]
[ i ]
発表年が[検索終了年][ k ])
解答群
ア 以降 イ 以前 ウ かつ エ に一致 オ 又は
設問3の正解例へ
メニューへ戻る