戦国IT - 情報処理技術者試験の過去問対策サイト
お知らせお問い合わせ料金プラン

データベーススペシャリスト 2021年 午前215


問題文

関係データベースにおいてタプル数nの表二つに対する結合操作を入れ子ループ法によって実行する場合の計算量はどれか。

選択肢

(正解)

関係データベースの入れ子ループ結合の計算量【午前2 解説】

要点まとめ

  • 結論:入れ子ループ法による2つの表の結合は計算量がとなる。
  • 根拠:外側のループで回、内側のループでも回の比較が必要なため、総計回の操作が発生する。
  • 差がつくポイント:結合アルゴリズムの計算量を理解し、特に入れ子ループ法の非効率さを把握しているかが重要。

正解の理由

入れ子ループ法は、外側の表の各タプルに対して内側の表の全タプルを順に比較する単純な結合方法です。
表のタプル数がそれぞれの場合、外側ループで回、内側ループで回の比較が行われるため、計算量はとなります。
このため、選択肢の中でである「エ」が正解です。

よくある誤解

入れ子ループ法の計算量をと誤認しやすいですが、単純な二重ループであるため二乗の計算量になります。
また、インデックスを利用した結合と混同してしまうことも多いです。

解法ステップ

  1. 入れ子ループ法の動作をイメージする(外側の表の各タプルに対し内側の表を全探索)。
  2. 外側の表のタプル数を、内側の表のタプル数もと仮定する。
  3. 外側ループで回、内側ループで回の比較が行われることを確認。
  4. 総比較回数はとなり、計算量はと判断。
  5. 選択肢の中からを選ぶ。

選択肢別の誤答解説

  • ア:
    → 二重ループの計算量を誤解。は二分探索などの計算量であり、入れ子ループ法には該当しない。
  • イ:
    → 片方の表だけを走査する場合の計算量。入れ子ループ法は両方の表を全探索するため、これより大きい。
  • ウ:
    → ソートや効率的な結合アルゴリズムの計算量に近いが、単純な入れ子ループ法ではない。
  • エ:
    → 入れ子ループ法の典型的な計算量で正解。

補足コラム

入れ子ループ法は最も単純な結合アルゴリズムですが、効率が悪いため大規模データには不向きです。
より効率的な結合方法としては、ソートマージ結合やハッシュ結合があり、これらは計算量をに抑えられます。
また、インデックスを利用した結合も計算量削減に有効です。

FAQ

Q: 入れ子ループ法はどんな場合に使われますか?
A: 小規模データやインデックスがない場合の単純な結合処理で使われますが、大規模データには非効率です。
Q: ソートマージ結合と入れ子ループ法の違いは?
A: ソートマージ結合は両方の表をソートしてからマージするため、計算量は程度で、入れ子ループ法より高速です。

関連キーワード: 関係データベース、結合アルゴリズム、入れ子ループ法、計算量、データベース最適化
← 前の問題へ次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

データベーススペシャリスト
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてプライバシーポリシー利用規約特商法表記開発者について