Alias
Jules
- datenbank
Guten morgen
habe eine frage zum Alias. Wir der Alias (siehe unten) tone nach dem er mit ttwo verglichen worde "resetet" oder wird er nochmal neu aufgerufen bei dem vergliech tone.text=tp.text? Ich frage weil wenn es so wäre würden manche zeilen ausgelassen denn: Ich will Tabelle1 und Tabelle 2 vergleichen und dann nochmal Tabelle1 und Testprogram vergleichen, ich will nicht das die vergleichsdaten vom ersten vergleich dann weitergenutzt werden im zweiten vergleich.
Hoffe mein Problem ist verständlich.
SELECT *
FROM
Tabelleeins AS tone
LEFT OUTER JOIN
Tabellezwei AS ttwo
on
tone.text=ttwo.text
Left outer join
Testprogram AS tp
on
tone.text=tp.text
WHERE text IS NOT NULL
MFG
Hello,
Hoffe mein Problem ist verständlich.
hmh, ansatzweise...
SELECT *
FROM
Tabelleeins AS tone
LEFT OUTER JOIN
Tabellezwei AS ttwo
on
tone.text=ttwo.text
Left outer join
Testprogram AS tp
on
tone.text=tp.text
WHERE text IS NOT NULL
Wenn du tone als Ausgangspunkt zweier LEFT JOIN verwendest ist sichergestellt, dass ALLE Datensätze von tone Teil der Ergebnismenge werden, egal was in ttwo und tp los ist. Beantwortet das deine Frage?
MfG
Rouven
yo,
habe eine frage zum Alias. Wir der Alias (siehe unten) tone nach dem er mit ttwo verglichen worde "resetet" oder wird er nochmal neu aufgerufen bei dem vergliech tone.text=tp.text?
weder noch, es wird nichts resetet und auch nicht neu aufgerufen. ein alias ist gleichzusetzen mit den orginalnamen der tabelle. und das hat mit reseten oder neu aufrufen nicht viel zu tun. denke dir einfach du würdest den richtigen namen der tabelle benutzen, genauso funktioniert ein alias. und noch ein kleiner tipp, den ich persönlich immer "schöner" finde, du kannst das AS weglassen, zumal das bei tabellennamen auch nicht jedes dbms haben will.
was dein problem angeht, so solltest du dir bildlich klar machen, wie eine dbms einen join durchführt, besonders bezüglich eines outer joins. hinzu kommt noch, das deine anweisung eigentlich eine fehlmeldung hervorbringen sollte, den in der WHERe klausel qualifizierst du die spalte text nicht, die du nach NULL prüfst. und es gibt ja ganz offensichtlich mehrere tabellen mit der spalte text.......
Ilja