令和7年度 秋期 応用情報技術者試験 午前 問27
テクノロジ/データベース“売上” 表への次の検索処理のうち,B⁺木インデックスよりもハッシュインデックスを設定した方が適切なものはどれか。ここで,インデックスを設定する列を<>内に示す。 売上(伝票番号,売上年月日,商品名,利用者ID,店舗番号,売上金額)
出典:令和7年度 秋期 応用情報技術者試験 午前 問27
- ア売上金額が1万円以上の売上を検索する。<売上金額>
- イ売上年月日が今月の売上を検索する。<売上年月日>
- ウ商品名が ‘DB’ で始まる売上を検索する。<商品名>
- エ利用者IDが ‘1001’ の売上を検索する。<利用者ID>
正解:エ
解説
ハッシュインデックスは,キー値をハッシュ関数で変換して格納位置を直接求めるため,値が完全に一致する等価検索を非常に高速に処理できます。一方で,ハッシュ値は元の値の大小関係や並び順を保存しないため,範囲検索や前方一致検索,整列された順での取り出しには使えません。これらは B⁺木インデックスの得意分野です。
選択肢ごとの解説
- ア誤り。「1万円以上」は範囲検索であり,キーの大小順を保持する B⁺木インデックスが適しています。
- イ誤り。「今月の売上」は日付の範囲検索であり,B⁺木インデックスが適しています。
- ウ誤り。「‘DB’ で始まる」は前方一致検索であり,キー順に並ぶ B⁺木インデックスが適しています。
- エ正しい。利用者IDが特定の値と完全一致する検索なので,ハッシュインデックスが適しています。