多重集合(バッグ)とは?
多重集合(バッグ)とは、同じ要素の重複を許す集合。理論上の関係は重複を許さない集合だが、SQLの表と問合せ結果は重複を許す多重集合として扱われる。この差が、射影が自動で重複を除かない、集合演算に重複を残す版がある、といった挙動の理由になる。
基本情報技術者試験の過去問では2回出題されています(2018年度〜2019年度)。
たじゅうしゅうごう
多重集合(バッグ)の意味
同じ要素の重複を許す集合。理論上の関係は重複を許さない集合だが、SQLの表と問合せ結果は重複を許す多重集合として扱われる。この差が、射影が自動で重複を除かない、集合演算に重複を残す版がある、といった挙動の理由になる。
多重集合(バッグ)の具体例
SELECT 部門コード FROM 社員 は関係代数の射影と違い、社員数だけ同じ部門コードが並ぶ。重複を除くには DISTINCT を明示する。UNION は重複を除くが UNION ALL は残すため、後者は並べ替えが不要で高速になる。
多重集合(バッグ)は試験でどう引っ掛けられる?
「関係には重複が無い」という理論をそのままSQLに当てはめると件数を読み違える。逆に、重複除去は暗黙に並べ替えやハッシュを伴うので、DISTINCT を癖で付けると不要なコストを払うことになる。
多重集合(バッグ)と関連する用語
多重集合(バッグ)が出た過去問
コンパイラによる最適化の主な目的はどれか。
正解:プログラムの実行時間を短縮する。
要点:コンパイラの最適化が狙うのは目的プログラムの実行時間短縮
コンパイラの最適化は、不要な命令の削除、ループ内の不変な計算の外出し、レジスタの有効利用などによって、生成する目的プログラムの実行効率を高める処理である。狙いはあくまで実行時の速度向上(あるいはコードサイズの削減)であり、最適化を有効にすると原始プログラムとの対応が崩れてデバッグはむしろ難しくなり、コンパイル時間も延びる。
出典:平成30年度 春期 基本情報技術者試験 午前 問18(IPA)情報セキュリティにおいてバックドアに該当するものはどれか。
正解:アクセスする際にパスワード認証などの正規の手続が必要なWebサイトに、当該手続を経ないでアクセス可能なURL
要点:バックドアは正規の認証を回避できる裏口の経路
バックドアとは、正規の認証手続を回避してシステムへ入り込める裏口のことである。攻撃者が侵入後に再訪問できるよう仕掛けたり、開発時のデバッグ用の抜け道が残ってしまったりして生じる。認証を経ずに到達できてしまう隠しURLは、まさにこの裏口に当たる。
出典:令和1年度 秋期 基本情報技術者試験 午前 問39(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。