# Join zweier Tabellen in SQL



## LegendaryBeazt (4. Mai 2018)

Angenommen ich habe zwei Tabellen, eine für den Gast und eine für das Zimmer. Der Gast hat als Primärschlüssel die GastID, das Zimmer die ZimmerNr.

Will ich nun in SQL einen Befehl zum joinen der beiden Tabellen erstellen, muss ich dann              1.) WHERE Gast.GastID = Zimmer.GastID

2.)WHERE Zimmer.ZimmerNr = Gast.ZimmerNr

1 oder 2 schreiebn?

Und wie kann ich erkennen, über welches Attribut (welchen Primärschlussel) Ich den join machen muss?
VG Max


----------



## Thallius (4. Mai 2018)

Weder noch. Du Must die Beziehung im on Statement angeben.

Select ...
from Zimmer
Join Gast on (Gast.id = Zimmer.gastid)
Where....

Oder eben anders herum. Das kommt ja dann drauf an was du an Daten haben willst.


----------



## mrBrown (4. Mai 2018)

LegendaryBeazt hat gesagt.:


> 1.) WHERE Gast.GastID = Zimmer.GastID
> 
> 2.)WHERE Zimmer.ZimmerNr = Gast.ZimmerNr


Erstmal solltest du dir bewusst machen, ob der Gast das Zimmer oder das Zimmer den Gast kennt (oder es eine dritte Tabelle wie z.B. "Buchung" gibt, die Gast und Zimmer verbindet)


----------

