![]() |
AW: Eingeschobener Join
Ihr habt Recht, ich habe einen kleinen Tippfehler gemacht:
SQL-Code:
@Iwo Asnet: Danke für die Erklärung mit der Mengenlehre, mit der Explizit hingeschriebenen Klammer wird dies auch sofort deutlich.
select * from A a
left join B b ( join C c on c.key = b.key --join C c on c.key = a.key ) on b.key = a.key; |
AW: Eingeschobener Join
Ist denn ein Join dasselbe wie ein Left Join?
Wenn nicht, wage ich mal zu behaupten, das die Ergebnismenge nicht gleich sein muss, wie bei der Version mit den zwei Left Joins, da die eingeschobene Variante evtl. weniger zurückliefert als nur B. Kann aber auch sein, dass ich da gerade zusehr um die Ecke denke |
AW: Eingeschobener Join
Zitat:
|
AW: Eingeschobener Join
Nein, es ist nicht das gleiche.
![]() ![]() |
AW: Eingeschobener Join
Mein ich doch. Dann müsste doch auch meine These Stimmen, dass:
SQL-Code:
nicht zwingend dasselbe Ergebnis liefert wie
select * from A a
left join B b ( join C c on c.key = b.key --join C c on c.key = a.key ) on b.key = a.key;
SQL-Code:
Das zweite liefert alles von A und dazu alles von B was zu A passt und dazu alles von C was zu A passt.
select * from A a
left join B b on b.key = a.key left join C c on c.key = a.key; Das erste liefert alles von A und dazu alles von B und C, wo C zu B passt. Dadurch könnten doch zuvor schon zu A passende Daten von B verloren gehen, da sie nicht zu C passen. |
AW: Eingeschobener Join
Code:
Getippt und nicht getestet (bin kein RDMBS)
select * from A a
left join (B b join C c on c.key = b.key) on b.key = a.key; A = 1,2,3 B = 3,4,5 C = 2,6,7 bc = B join C = () A left join bc = (1-x-x, 2-x-x, 3-x-x) select * from A a left join B b on b.key = a.key left join C c on c.key = a.key; ab = A left join B = (1-x,2-x,3-3) ab left join C = (1-x-x, 2-x-2, 3-3-x) Die Anzahl der Zeilen ist die Gleiche, aber nicht der Inhalt der Zeilen. Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz