修了試験 2019-07-28実施分 基本情報技術者試験 問28
“売上”表への次の検索処理のうち,B+木インデックスよりもハッシュインデックスを設定した方が適切なものはどれか。 ここで,インデックスを設定する列を<>内に示す。 売上(伝票番号,売上年月日,商品名,利用者ID,店舗番号,売上金額)
正答4
解説
正解は4です。 B+木のインデックスは、キーを順序どおりに保持するので、範囲検索や前方一致検索に強い構造です。 ハッシュのインデックスは、キーをハッシュ関数で格納位置に変換するので、完全一致の検索に強い構造です。 ハッシュでは値の順序が失われるため、範囲検索には向きません。 【選択肢別解説】 1:× 売上金額が1万円以上という条件は範囲検索です。 順序を保持するB+木のインデックスの方が適しています。 2:× 売上年月日が今月という条件は、日付の範囲検索です。 B+木のインデックスの方が適しています。 3:× 商品名が'DB'で始まるという条件は前方一致検索で、文字列の範囲を探すことになります。 B+木のインデックスの方が適しています。 4:○ 利用者IDが'1001'という条件は、値が等しい行を探す完全一致検索です。 ハッシュ関数で格納位置を直接求められるので、ハッシュのインデックスが適しています。 【ポイント】 等号(=)の検索はハッシュ、不等号やBETWEEN、LIKE 'DB%'はB+木と整理しましょう。まとめて解く
修了試験 2019-07-28実施分を通しで解く(80問)→