データベーススペシャリスト暗記無料で始める

関係代数とは?かんけいだいすう

関係代数とは、演算の結果もまた一つの表になる(閉包性)ため、演算を次々に積み重ねて問合せを組み立てられる代数体系。和・差・共通・直積の集合演算と、選択・射影・結合・商の関係固有の演算を持つ。SQLが「何が欲しいか」を書くのに対し、関係代数は「どの順に取り出すか」という手順そのものを表す。

最終更新:2026-10-06

試験情報

データベーススペシャリスト試験の過去問では2回出題されています(2016年度〜2020年度)。

データベーススペシャリスト試験の頻出用語/午前II

別名:relational algebra

この語が出る過去問を解く →

背景

階層型・網型のデータベースでは、目的のデータへ到達する経路をアプリケーション側がポインタをたどる手続きとして書いていたため、格納構造を変えるたびにプログラムが壊れた。表から表への演算だけで問合せを表現できるようにしたことで、経路の選択をDBMS側の仕事に移せるようになった。データベーススペシャリスト試験でこれを問うのは、問合せの書換えや実行計画の良し悪しを論じる土台がここにあるためで、記述式では「なぜその処理順が速いのか」を説明する言葉として使う。

具体例

1970年にIBMのエドガー・F・コッドが提唱した体系で、PostgreSQLやOracle Databaseの問合せ最適化器も、受け取ったSQLを内部では関係代数に近い式へ変換してから書き換える。受注表から「部門コードD01の担当者名」を得るなら、まず選択(条件で行を絞る)を当て、その結果に射影(列を絞る)を重ねる。

試験での引っ掛け

基本となるのは和・差・直積・選択・射影の5つだけで、共通・結合・商は残りの組合せで書き直せる導出演算にすぎない。R∩S を R−(R−S) に置き換えられるかを問う出題が定番。また関係代数は集合を扱う体系なので射影の結果から重複行は消えるが、SQL の SELECT は既定で重複を残す——DISTINCT を付けて初めて射影と一致する点も取り違えやすい。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では2回出題(2016年度〜2020年度)
  • 分野:午前II
  • 基本となるのは和・差・直積・選択・射影の5つだけで、共通・結合・商は残りの組合せで書き直せる導出演算にすぎない。