LEFT JOIN oder sonstige Verknüpfung der Abfrage
am 28.09.2004 15:12:41 von Sandro
Hallo NG,
ich verstehe LEFT JOIN nicht oder bin ich auf dem Holzweg? Hoffe hier auf
Hilfe!
Ich habe z.B. zwei Tabellen mit Feldern
TabelleA: ID,Name,Auto
TabelleB: ID,Name,Ort_ID
Jetzt möchte ich alle Autos ausgegeben die sich in dem Ort mit der ID 5
befinden.
Theoretisch ist mir der Zusammenhang klar: Auto<->Name<->Ort
Doch wie muss die SELECT-Anweisung heißen, damit ich mit einem "...WHERE
TabelleB.Ort_ID='5' " das richtige Ergebnis bekomme???
Danke vorab und Gruß,
Sandro
Re: LEFT JOIN oder sonstige Verknüpfung der Abfrage
am 28.09.2004 16:27:40 von Uli Honal
Sandro wrote:
> Ich habe z.B. zwei Tabellen mit Feldern
> TabelleA: ID,Name,Auto
> TabelleB: ID,Name,Ort_ID
>=20
> Jetzt möchte ich alle Autos ausgegeben die sich in dem Ort mit der ID=
5
> befinden.
>=20
> Theoretisch ist mir der Zusammenhang klar: Auto<->Name<->Ort
Mir nicht, sorry. Die Tabellen sollten idR. immer nach den Subjekten=20
benannt sein, die darin beschrieben werden.
Meinst Du sowas wie Auto <-> Besitzer <-> Wohnort?
Dann wären folgende Tabellen / Beziehungen denkbar:
"Auto": ID, Marke, Farbe, BesitzerID*, ..
"Ort": ID, Ortsname, PLZ, ...
"Besitzer": ID, Vorname, Nachname, OrtID*
(* =3D Fremdschlüssel)
> Doch wie muss die SELECT-Anweisung heißen, damit ich mit einem "...WH=
ERE
> TabelleB.Ort_ID=3D'5' " das richtige Ergebnis bekomme???
In meinem Beispiel:
SELECT Auto.ID, Auto.Marke, Auto.Farbe
FROM Auto
INNER JOIN Besitzer
ON Auto.BesitzerID =3D Besitzer.ID
WHERE Besitzer.OrtID =3D 5
Zu den Unterschieden von INNER JOIN und LEFT OUTER JOIN:
http://google.de/search?q=3D%22INNER+JOIN%22+%22LEFT+OUTER+J OIN%22+unters=
chied
BTW: Reine SQL-Probleme sind hier OT.
Grüsse,
-Uli.
Re: LEFT JOIN oder sonstige Verknüpfung der Abfrage
am 28.09.2004 18:10:52 von Sandro
"Uli Honal" schrieb im Newsbeitrag
news:415974de@olaf.komtel.net...
>Mir nicht, sorry. Die Tabellen sollten idR. immer nach den Subjekten
>benannt sein, die darin beschrieben werden.
>
>Meinst Du sowas wie Auto <-> Besitzer <-> Wohnort?
Ja, das war soe in Beispiel
> In meinem Beispiel:
> SELECT Auto.ID, Auto.Marke, Auto.Farbe
>
> FROM Auto
> INNER JOIN Besitzer
> ON Auto.BesitzerID = Besitzer.ID
>
> WHERE Besitzer.OrtID = 5
Ok, das war es - INNER JOIN. Das kannte ich bisher noch nicht! DANKE!
> BTW: Reine SQL-Probleme sind hier OT.
Sorry, wusste ich nicht.
Gruß,
Sandro