Mögliche Duplizieren:
(self,left outer,right outer,full outer) join - real world examplesWas ist der Unterschied zwischen LEFT, RIGHT, INNER und OUTER JOINs?
Hallo, liebe SO-Community!
Ich habe mit SQL-Datenbanken seit einiger Zeit gearbeitet, aber ein Aspekt ist immer noch sehr verwirrend für mich - Tabellen Joins. Ich verstehe sehr klar, was passiert, wenn ich eine Multitable-Abfrage schreibe, aber wenn ein JOIN ins Spiel kommt, habe ich das Gefühl, dass ich einfach nichts verstehe.
Bitte helfen Sie mir zu verstehen, was Tabelle beitreten ist, und was ist der Unterschied zwischen LINKS, RECHTS, INNER und OUTER JOINs? Was ist ein Self-Join?
Ich wäre Ihnen dankbar, wenn Sie ein Beispiel für die Verwendung in dieser einfachen Tabellenstruktur zur Verfügung stellen könnte:
Tabelle Autoren
id |name
---------------
1 |John
2 |Bob
3 |Richard
Tabelle Bücher
id |author_id |title |rating
-----------------------------------------
1 |1 |book A |5
2 |1 |book B |4.8
3 |3 |book C |3
Thank Sie!
Ich googelte diese genaue Frage und kam mit mehreren Treffern auf der Titelseite, die die Unterschiede veranschaulichen. Könnte schneller sein als hier zu fragen. Um ehrlich zu sein, muss ich normalerweise mein Gedächtnis auffrischen, wenn ich mich selbst besuche! – DarinH
"Ich verstehe sehr klar, was passiert, wenn ich eine Multitable-Abfrage schreibe, aber wenn ein JOIN ins Spiel kommt, habe ich das Gefühl, dass ich einfach nichts verstehe." Huh? Ein Join ist immer im Spiel, wenn Multitable-Abfragen geschrieben werden. Sie verwenden nicht die implizite Joinsyntax (die mit den Kommas zwischen den Tabellen)? Wenn dies der Fall ist, schreiben Sie niemals einen anderen Code, der diese nicht standardisierte und sehr schlechte Syntax verwendet. Wenn Sie diese schlechte Syntax verwenden, ist es kein Wunder, dass Sie Joins nicht verstehen. – HLGEM
HLGEM, warum ist es veraltet und arm? –