本文へスキップ

平成22年度 春期 ITパスポート試験 問96

この問題の解説と、これまでの解答の記録です。

問96
頻出度★★☆

A社研究所の資料室では,文献の貸出管理業務を行っている。文献の貸出管理業務には,PCのデータベースソフトを活用した文献貸出管理システム(以下,文献システムという)を利用している。 文献システムのデータベース構造は,次のとおりである。 社員表

社員番号社員名メールアドレス

文献表

文献番号文献名

貸出表

文献番号文献名社員番号社員名メールアドレス貸出日返却日

保有する文献と貸出についての条件は,次のとおりである。 〔保有する文献と貸出についての条件〕 (1) 同一文献は複数保有せず,文献ごとに固有な文献番号が採番されている。 (2) 貸出期間は,貸出日を含んで最長2週間である。ここで,返却された文献をその日に違う社員に貸し出すことは可能であるが,同じ社員に対して返却した同一文献をその日のうちに貸し出すことはない。 貸出から返却までの手続は,次のとおりである。 〔貸出から返却までの手続〕 (1) 社員は借りたい文献を書庫から取り出して,資料室の担当者(以下,担当者という)に手渡し,社員番号を提示する。 (2) 担当者は文献システムを使って貸出処理を行い,社員に文献を手渡す。 (3) 文献返却時,社員は担当者に文献を返却し,担当者は文献システムを使って返却処理を行う。 文献システムにおける貸出処理と返却処理の仕様は,次のとおりである。 〔貸出処理〕 (1) 文献番号で文献表を検索し,文献名を取得する。 (2) 社員番号で社員表を検索し,社員名とメールアドレスを取得する。 (3) 貸出表のレコード(以下,貸出レコードという)を用意して,(1),(2)で取得した文献番号,文献名,社員番号,社員名,メールアドレスを設定し,貸出日に当日の日付を,返却日に空白値を設定する。 (4) (3)で設定した貸出レコードを貸出表に追加する。 〔返却処理〕 (1) 文献番号で貸出表を検索し,返却日が空白値である貸出レコードを抽出する。 (2) 抽出した貸出レコードの返却日に当日の日付を設定し,貸出表を更新する。 貸出日を含んで 2 週間を超えても返却していない社員に対して, 連絡するために調査を行った。該当者を抽出する方法として, 適切なものはどれか。

出典 平成22年度 春期 ITパスポート試験 問96
解説

問 96

  • 不正解ア

    条件の項目が入れ替わっています。貸出日は貸出時に必ず記録されるので空白値にはならず、この条件ではほとんど何も抽出できません。さらに「返却日が調査日から 2 週間以内」は返却日が入っている、つまり既に返却済みのレコードを選ぶ条件で、未返却者を探すという目的とは逆向きです。

  • 不正解イ

    「貸出日が調査日から 2 週間以上前」という期限の条件だけで、未返却かどうかを問うていません。そのため 2 週間より前に借りて既にきちんと返却した社員のレコードまで含まれてしまい、連絡すべきでない人まで抽出されます。

  • ウ

    正解 求めたいのは「まだ返却しておらず、しかも貸出から 2 週間を超えている」社員なので、抽出条件は二つ必要です。一つ目は未返却であること。貸出表では返却処理を行ったときに返却日へ日付を設定するので、返却日が空白値のままのレコードが「まだ返っていない」ものにあたります。二つ目は期限超過であること。貸出日を含んで 2 週間を超えたということは、貸出日が調査日から 2 週間以上前だという意味です。ウ はこの二つを「かつ」で結んで、返却日が空白値、かつ、貸出日が調査日から 2 週間以上前のレコードを抽出しており、該当者だけを過不足なく取り出せます。これは関係データベースでいう「選択」(条件に合う行だけを絞り込む操作)を、複数条件の AND で行う典型例です。

  • 不正解エ

    「返却日が空白値」は未返却という条件としては正しいのですが、期限の条件が欠けています。昨日借りたばかりでまだ返却期限内の社員も未返却なので抽出対象に入ってしまい、2 週間を超えた該当者だけに絞り込めません。

ここがポイント
  • 抽出(選択)条件の設計では、日本語の要件を項目の条件に置き換えて数え上げる。「まだ返却していない」= 返却日が空白値、「貸出日を含んで 2 週間を超えた」= 貸出日が調査日から 2 週間以上前、という二つを「かつ」(AND)で結ぶ。
  • 条件が一つ欠けると結果に不要なレコードが混じり、条件の項目を取り違えると必要なレコードが取れない。空白値(値が未設定の状態)は「その処理がまだ行われていない」ことを表す印として使われる点も押さえておく。
用語

解答の記録