Cross Join (SQL): Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
K
K
 
Zeile 4: Zeile 4:
 
Der Cross Join kann auf verschiedene Arten gemacht werden, einmal mit und einmal ohne den Schlüsselwörtern '''CROSS JOIN'''.
 
Der Cross Join kann auf verschiedene Arten gemacht werden, einmal mit und einmal ohne den Schlüsselwörtern '''CROSS JOIN'''.
 
<syntaxhighlight lang="sql">
 
<syntaxhighlight lang="sql">
SELECT * FROM tabelle1 CROSS JOIN tabelle 2;
+
SELECT * FROM tabelle1 CROSS JOIN tabelle2;
SELECT * FROM tabelle1, tabelle 2;
+
SELECT * FROM tabelle1, tabelle2;
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Aktuelle Version vom 5. November 2021, 07:15 Uhr

Der Cross Join ist der standard Join, hier wird aus alle Einträgen der beiden Mengen ( Tabellen) das Kreuzprodukt gebildet. Das Ergebnis des Join muss vom Benutzer selbst gefilter/begrenzt werden.

Syntax

Der Cross Join kann auf verschiedene Arten gemacht werden, einmal mit und einmal ohne den Schlüsselwörtern CROSS JOIN.

SELECT * FROM tabelle1 CROSS JOIN tabelle2;
SELECT * FROM tabelle1, tabelle2;

Beispiel

Tabelle 1 - Personentabelle:

Person_ID Name Ort_ID
1 person1 1
2 person2 1
3 person3 2

Tabelle 2 - Ortstabelle:

Ort_ID Ortsname
1 Berlin
2 Hamburg
3 München

Bei Bildung des Cross Joins über die beiden Tabellen ergibt sich folgendes Bild.

SELECT * FROM personentabelle CROSS JOIN ortstabelle;

Personentabelle <math>\times</math> Ortstabelle

Person_ID Name Ort_ID Ort_ID Ortsname
1 person1 1 1 Berlin
2 person2 1 1 Berlin
3 person3 2 1 Berlin
1 person1 1 2 Hamburg
2 person2 1 2 Hamburg
3 person3 2 2 Hamburg
1 person1 1 3 München
2 person2 1 3 München
3 person3 2 3 München