SkillStack
テクノロジ系27 / 80問

応用情報技術者試験 令和7年度 秋期 午前 問27

"売上"表への次の検索処理のうち、B⁺木インデックスよりもハッシュインデックスを設定した方が適切なものはどれか。ここで、インデックスを設定する列を<>内に示す。 売上(伝票番号、売上年月日、商品名、利用者 ID、店舗番号、売上金額)

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】エ

ハッシュインデックスは、検索キーにハッシュ関数を適用して格納場所を求めるため、「列の値が指定値と等しい」という等価検索を高速に処理できます。利用者IDが「1001」と完全に一致する行を探すエは等価検索なので、B⁺木インデックスよりもハッシュインデックスが適しています。

アの売上金額が1万円以上という検索は、値の大小関係を利用する範囲検索です。ハッシュ値からは元の値の大小関係が分からないので不適切です。キーを順序付けて保持し、指定位置から連続してたどれるB⁺木インデックスが適しています。

イの売上年月日が今月という検索も誤りです。これは月初以上かつ翌月初未満などの範囲条件として処理されます。日付の順序に沿って検索できるB⁺木インデックスが適しています。

ウの「DB」で始まるという検索も誤りです。これは前方一致検索であり、「DB」から始まる文字列の範囲を順番に調べられるB⁺木インデックスが適しています。ハッシュインデックスは文字列全体の完全一致には有効ですが、先頭部分だけを指定した検索には向きません。

【ポイント】 ハッシュインデックスは「=」による等価検索、B⁺木インデックスは大小比較、範囲検索、前方一致検索に適しています。 ORDER BYや最大値・最小値の取得にも、キーが整列しているB⁺木を活用できます。

出典:令和7年度 秋期 応用情報技術者試験 午前 問27
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の80問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める