Relationenalgebra und SQL: Einleitung

Aus Wikibooks


Die Relationenalgebra oder Relationale Algebra ist eine formale Sprache, mit der sich Anfragen über einem relationalen Schema formulieren lassen. Sie erlaubt es, Relationen[1] miteinander zu verknüpfen oder zu reduzieren und komplexere Informationen daraus herzuleiten.

Es werden Operationen definiert, die sich auf einer Menge von Relationen anwenden lassen. Damit lassen sich bspw. Relationen verknüpfen, filtern oder umbenennen. Die Ergebnisse aller Operationen sind ebenfalls Relationen. Aus diesem Grund bezeichnet man die Relationenalgebra als abgeschlossen.

Ihre Bedeutung hat die Relationenalgebra als theoretische Grundlage für Anfragesprachen in relationalen Datenbanken. Hier werden die Operationen der Relationalen Algebra in so genannten Datenbankoperatoren implementiert. Wenn jeder Term der relationalen Algebra in der Anfragesprache umgesetzt werden kann, heißt sie relational vollständig. Wenn jeder Term durch genau einen Ausdruck der Anfragesprache umgesetzt werden kann, heißt sie streng relational vollständig. Im Gegensatz zu den Kalkülen[2] ist die relationale Algebra sicher, d.h. sie liefert in endlicher Zeit ein endliches Resultat.

Die Erfindung der relationalen Algebra durch Edgar F. Codd[3] hat in den 1970er Jahren die Datenbankwelt revolutioniert, deren Standarddatenmodelle damals das hierarchische Modell und das Netzwerkdatenbankmodell waren. Die Datenbanksprache SEQUEL, ein Vorläufer des heutigen SQL[4], war neben QBE[5] und QUEL eine der ersten Umsetzungen der Ideen des relationalen Modells, und damit der relationalen Algebra.


  1.  Relation (Datenbank)
  2.  Kalkül (Datenbank)
  3. britischer Mathematiker und Wissenschaftler  Edgar F. Codd
  4.  SQL
  5.  Query by Example