Händler-Datenbank (SQL-Beispiel)/Kartesisches Produkt: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Keine Bearbeitungszusammenfassung
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 11: Zeile 11:


===Das Kartesische Produkt===
===Das Kartesische Produkt===
[[Datei:Relational Algebra Cartesian Product.svg | mini|440px |links| gerahmt|Das Kartesische Produkt verknüpft alle möglichen Tupelpaare zu jeweils einem Tupel, das alle Attribute beider Tupel enthält.]]
[[Datei:Relational Algebra Cartesian Product.svg | mini|440px |links| gerahmt|Das Kartesische Produkt zweier Tabellen]]
<div style="clear:both"></div>
<div style="clear:both"></div>
Das Kartesische Produkt verknüpft alle möglichen Tupelpaare zweier Relationen zu jeweils einem Tupel, das alle Attribute beider Tupel enthält.
Das Kartesische Produkt verknüpft alle möglichen Tupelpaare zweier Relationen zu jeweils einem Tupel, das alle Attribute beider Tupel enthält.


Es seien <math>r := r(a_1: D_{a_1}, \ldots, a_m: D_{a_m})</math> und <math>s := s(b_1: D_{b_1}, \ldots, b_n: D_{b_n}) </math> zwei Relationen,
Es seien <math>r := r(a_1: D_{a_1}, \ldots, a_m: D_{a_m})</math> und <math>s := s(b_1: D_{b_1}, \ldots, b_n: D_{b_n}) </math> zwei Relationen  
wobei alle Attributbezeichner verschieden seien.
mit [[Relationale_Algebra#Attributtupel|Attributtupeln]],
Dann heißt
wobei alle Attributbezeichner verschieden seien. Dann heißt
<div class="formula"><math>r \times s := \{(a_1: v_{a_1}, \ldots, a_m: v_{a_m}, b_1: v_{b_1}, \ldots, b_n: v_{b_n})\;|\; v_{a_1} \in D_{a_1} \wedge \ldots \wedge v_{a_m} \in D_{a_m} \wedge v_{b_1} \in D_{b_1} \wedge \ldots \wedge v_{b_n} \in D_{b_n}\}</math></div>
 
<div class="formula"><math>
\begin{align*}
r \times s :=\; &\{(a_1: v_{a_1}, \ldots, a_m: v_{a_m}, b_1: v_{b_1}, \ldots, b_n: v_{b_n})\;|\\
      &\;\;v_{a_1}\!\in\!D_{a_1} \wedge \ldots \wedge v_{a_m}\!\in\!D_{a_m} \wedge v_{b_1}\!\in\!D_{b_1} \wedge \ldots \wedge v_{b_n}\!\in\!D_{b_n} \\
      &\}
\end{align*}
</math></div>
'''Kartesisches Produkt von <math>r</math> und <math>s</math>'''.
'''Kartesisches Produkt von <math>r</math> und <math>s</math>'''.



Aktuelle Version vom 26. Oktober 2019, 09:54 Uhr

Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.

Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen nur teilweise:

Korrektheit: 0
(nicht überprüft)
Umfang: 0
(viel zu gering)
Quellenangaben: 3
(wichtige Quellen vorhanden)
Quellenarten: 5
(ausgezeichnet)
Konformität: 5
(ausgezeichnet)

Die nachfolgenden Beispiele können beispielsweise mit SQLite oder PostgreSQL getestet werden. Installieren Sie dazu die zugehörige Händler-Datenbank.

Das Kartesische Produkt

Das Kartesische Produkt zweier Tabellen

Das Kartesische Produkt verknüpft alle möglichen Tupelpaare zweier Relationen zu jeweils einem Tupel, das alle Attribute beider Tupel enthält.

Es seien $ r := r(a_1: D_{a_1}, \ldots, a_m: D_{a_m}) $ und $ s := s(b_1: D_{b_1}, \ldots, b_n: D_{b_n}) $ zwei Relationen mit Attributtupeln, wobei alle Attributbezeichner verschieden seien. Dann heißt

$ \begin{align*} r \times s :=\; &\{(a_1: v_{a_1}, \ldots, a_m: v_{a_m}, b_1: v_{b_1}, \ldots, b_n: v_{b_n})\;|\\ &\;\;v_{a_1}\!\in\!D_{a_1} \wedge \ldots \wedge v_{a_m}\!\in\!D_{a_m} \wedge v_{b_1}\!\in\!D_{b_1} \wedge \ldots \wedge v_{b_n}\!\in\!D_{b_n} \\ &\} \end{align*} $

Kartesisches Produkt von $ r $ und $ s $.

Das kartesische Produkt kann analog auch für Positionstupel und attributierte Positionstupel definiert werden. Dem Attribut $ b_i $ wird dabei jeweils die Position $ m+i $ zugeordnet. Falls zwei Relationen gleichbenannte Attribute enthalten, müssen diese zunächst mit einer geeigneten Projektion in einer der beiden Tabellen umbenannt werden.

Quellen

  1. Kowarschick (MMDB-Skript): Wolfgang Kowarschick; Vorlesung Multimedia-Datenbanksysteme – Sommersemester 2018; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2018; Quellengüte: 4 (Skript)
  2. Kowarschick (MMDB): Wolfgang Kowarschick; Vorlesung „Multimedia-Datenbanksysteme“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2016; Quellengüte: 3 (Vorlesung), https://kowa.hs-augsburg.de/mmdb/mmdb-beispiele/haendler-datenbank/

Siehe auch