LEFT JOIN oder sonstige Verknüpfung der Abfrage

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