JOIN-Ausführung

Der Sinn für diese Schlüssel liegt in der Tatsache, dass Daten quer über die Tabellen und ohne die Duplikation dieser Daten miteinander verknüpft werden können. Z.B. es ist möglich den Namen von denen zu finden, die einen Stuhl gekauft haben ohne den vollen Namen in der AntiquitätenBesitzer Tabelle aufzuführen, sondern dadurch dass die Daten der AntiquitätenBesitzer Tabelle über die BesitzerID mit den Daten in Antiquität in "Relation" gebracht werden. Um das eben gebrachte Beispiel formal zu formulieren:


\begin{code}
SELECT BESITZERNAME, BESITZERVORNAME
FROM ANTIQUITÄTENBESITZER, ANTIQUITÄT
WHERE KÄUFERID = BESITZERID AND GEGENSTAND = 'Stuhl';
\end{code}

Zu beachten ist, dass beide Tabellen die in dieser Verknüpfung vorkommen in der FROM-Klausel aufgeführt sind. In der WHERE-Klausel wird die Suche auf die beschränkt die einen Stuhl besitzen und gekauft haben. Man beachte, dass die Klausel KÄUFERID = BESITZERID die Verknüpfung der zwei Tabellen darstellen. Da die Verknüpfung dank des "=" Operators erfolgt wird diese Operation ein "equijoin" genannt. Das Resultat dieses Befehls sind zwei Namen: Smith Bob und Fowler Sam.

Wenn den Spalten-Namen der Tabellen-Name durch einen Punkt (.) getrennt vorangestellt wird, wird das Punkt-Notation genannt. Dies wird jedesmal nötig, wenn der Spalten-Namen nicht mehr eindeutig ist (z.B. durch dessen Präsenz in zwei in einem JOIN teilhabenden Tabellen). Gleich ein Beispiel:


\begin{code}
SELECT ANTIQUITÄTENBESITZER.BESITZERNAME, ANTIQUITÄTENBESITZER.B...
...IQUITÄTENBESITZER.BESITZERID AND ANTIQUITÄT.GEGENSTAND =
'Stuhl';
\end{code}

Da in diesem Fall alle Spalten-Namen einzigartig waren, wäre das nicht notwendig.