Cross Join (SQL): Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
(Syntax)
Zeile 1: Zeile 1:
Der Cross Join ist der standard [[Join (SQL) | Join]], hier wird aus alle Einträgen der beiden Mengen ([[ Tabelle (SQL) | Tabellen]]) das [[Kreuzprodukt]] gebildet. Das Ergebnis des Join muss vom Benutzer selbst gefilter/begrenzt werden.
+
Der Cross Join ist der standard [[Join (SQL) | Join]], hier wird aus alle Einträgen der beiden Mengen ([[Tabelle (SQL) | Tabellen]]) das [[Kreuzprodukt]] gebildet. Das Ergebnis des Join muss vom Benutzer selbst gefilter/begrenzt werden.
  
 
===Syntax===
 
===Syntax===

Version vom 28. November 2008, 22:32 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. <code=sql> SELECT * FROM tabelle1 CROSS JOIN tabelle 2; SELECT * FROM tabelle1, tabelle 2; </code=sql>

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. <code=sql> SELECT * FROM personentabelle CROSS JOIN ortstabelle; </code=sql> 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