Vereinigungskonform

Der Begriff der Vereinigungskonformität tritt im Zusammenhang mit der relationalen Algebra (RA) auf und auch bei Anfragemengenausdrücken der SQL-Anfragen. In beiden Fällen müssen zwei Eingangsmengen mit Datensätzen vereinigungskonform sein, damit die Mengenoperatoren (relationale Algebra: Union, Differenz, Durchschnitt bzw. SQL: UNION, INTERSECT, MINUS/EXCEPT) ausführbar sind.

Definition (RA/SQL):

Zwei Relationen R1(A1,...,An) und R2(A1,...,An) heißen vereinigungskonform (oder auch: vereinigungsverträglich), wenn

  • die Anzahl der Attribute gleich ist,
  • die Datentypen der Attribute gleich sind,
  • die Attribute gleich heißen und
  • in der gleichen Reihenfolge in den Eingangsmengen der Operatoren auftreten.

Um ggf. eine Vereinigungskonformität herzustellen, können zwei andere Operatoren der relationalen Algebra angewendet werden, die Projektion, um überzählige Attribute verschwinden zu lassen, und die Umbenennung, um Namensgleichheit bei den Attributen zu erreichen.

Definition (Oracle):

Diese sehr strenge Definition wird z.B. bei Oracle nicht in letzter Konsequenz gefordert. Dort ist es ausreichend, wenn die Anzahl und die Reihenfolge gleich sind. Für die Datentypen reicht die Anforderung der Kompatibilität. Hinsichtlich des Themas, welcher Datentyp zu welchem implizit konvertierbar ist, sei hier auf die einschlägige Oracle-Literatur verwiesen. Namensgleich müssen die Spalten auch nicht sein. Es wird dann für die Ergebnismenge der Spaltenname der oberen SELECT-Anweisung verwendet.

Quellen:

  • Quellen/Standards in http://www.wiscorp.com/SQLStandards.html und http://www.jcc.com/sql.htm
  • INCITS/ISO/IEC 9075-1-2008. Part 1 "SQL/Framework", ISO International Organization for Standardization / INCITS InterNational Committee for Information Technology Standards, 2008
  • INCITS/ISO/IEC 9075-1-2008. Part 2 "SQL/Foundation", ISO International Organization for Standardization / INCITS InterNational Committee for Information Technology Standards, 2008
  • Adams, Ralf: "SQL - Eine Einführung mit vertiefenden Exkursen", Hanser, München, 2012, ISBN 978-3-446-43200-0
  • Elmasri, Ramez/Navathe, Shamkant B.: "Grundlagen von Datenbanksystemen" , Pearson Studium, München, 2002, ISBN 3-8273-7021-3
  • Faeskorn-Woyke, Heide/Bertelsmeier, Birgit/Riemer, Petra/Bauer, Elena: "Datenbanksysteme - Theorie und Praxis mit SQL2003, Oracle und MySQL", Pearson Education, München, 2007, ISBN 978-3-8273-7266-6
  • Kemper, Alfons/Eickler, André: "Datenbanksysteme", Oldenbourg, München, 2009, 978-3-486-59018-0
  • Melton, Jim/Simon, Alan R.: "SQL: 1999 - Understanding Relational Language Components", Morgan Kaufmann, San Francisco, 2001, ISBN 1558604561
  • Oracle® Database SQL Language Reference 11g Release 2 (11.2), E17118-03, August 2010, http://download.oracle.com/docs/cd/E11882_01/server.112/e17118.pdf
  • Saake, Gunter/Sattler, Kai-Uwe/Heuer, Andreas: "Datenbanken - Konzepte und Sprachen", mitp-Verlag, Redline GmbH, Heidelberg, 2007, ISBN 3-8266-1664-2
  • Sieben, Jürgen: "Oracle® SQL - Das umfassende Handbuch", Galileo Press, 2012, ISBN 978-3-8362-1875-7
  • Vossen, Gottfried: "Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme", Oldenbourg, München, 2008, ISBN 978-3-486-27574-2

Kategorie: Relationale Algebra, SQL, V