Heim > Datenbank > MySQL-Tutorial > Hauptteil

Der Unterschied zwischen Inner Join, Left Join und Right Join in MySQL

下次还敢
Freigeben: 2024-04-29 04:00:36
Original
636 Leute haben es durchsucht

Der Unterschied zwischen Inner Join, Left Join und Right Join in MySQL besteht darin, dass Inner Join nur übereinstimmende Zeilen in beiden Tabellen zurückgibt, während Left Join alle Zeilen der linken Tabelle zurückgibt, einschließlich übereinstimmender rechter Tabellenzeilen, und Right Join die rechte zurückgibt Tabelle Alle Zeilen, einschließlich der passenden linken Tabellenzeilen. Syntax des inneren Joins: SELECT * FROM table1 INNER JOIN table2 ON table1.column1 = table2.column2; Syntax des linken Joins: SELECT * FROM table1 LEFT JOIN table2 ON table1.column1 = table2.column2; Syntax des rechten Joins: SELE

Der Unterschied zwischen Inner Join, Left Join und Right Join in MySQL

Der Unterschied zwischen Inner Join, Left Join und Right Join in MySQL

Inner JOIN (INNER JOIN)

  • Gibt nur Datensätze mit übereinstimmenden Zeilen in den beiden Tabellen zurück.
  • Datensätze, die nicht übereinstimmen, werden verworfen.

LEFT JOIN

  • Gibt alle Datensätze in der linken Tabelle zurück, auch wenn es in der rechten Tabelle keine passenden Zeilen gibt.
  • Datensätze in der rechten Tabelle, die keine übereinstimmenden Zeilen haben, werden mit NULL-Werten gefüllt.

RIGHT JOIN

  • Gibt alle Datensätze in der rechten Tabelle zurück, auch wenn es in der linken Tabelle keine passenden Zeilen gibt.
  • Datensätze in der linken Tabelle ohne übereinstimmende Zeilen werden mit NULL-Werten gefüllt.

Verwendung

  • Inner Join: Wird verwendet, um Datensätze mit übereinstimmenden Zeilen zwischen zwei Tabellen zu finden und nicht übereinstimmende Datensätze zu verwerfen.
  • Linker Join: Wird verwendet, um alle Datensätze aus der linken Tabelle zu finden und Datensätze aus übereinstimmenden Zeilen in die rechte Tabelle einzubeziehen.
  • Rechter Join: Wird verwendet, um alle Datensätze der rechten Tabelle zu finden und Datensätze übereinstimmender Zeilen in die linke Tabelle einzubeziehen.

Grammatik

  • Innerer Join:

    <code class="sql">SELECT *
    FROM table1
    INNER JOIN table2
    ON table1.column1 = table2.column2;</code>
    Nach dem Login kopieren
  • Linker Join:

    <code class="sql">SELECT *
    FROM table1
    LEFT JOIN table2
    ON table1.column1 = table2.column2;</code>
    Nach dem Login kopieren
  • Rechter Join:

    <code class="sql">SELECT *
    FROM table1
    RIGHT JOIN table2
    ON table1.column1 = table2.column2;</code>
    Nach dem Login kopieren

Beispiel

Angenommen, wir haben Folgendes zwei Tabelle:

<code>Table1:
| id | name |
|---|---|
| 1 | John |
| 2 | Mary |
| 3 | Bob |

Table2:
| id | address |
|---|---|
| 1 | 123 Main St |
| 2 | 456 Elm St |
| 4 | 789 Oak St |</code>
Nach dem Login kopieren
  • Inner Join:

    <code class="sql">SELECT *
    FROM Table1
    INNER JOIN Table2
    ON Table1.id = Table2.id;</code>
    Nach dem Login kopieren

    Ergebnis:

id Name Adresse
1 John 123 Main St
2 Mary 456 Elm St
  • Linker Link:

    <code class="sql">SELECT *
    FROM Table1
    LEFT JOIN Table2
    ON Table1.id = Table2.id;</code>
    Nach dem Login kopieren

    Ergebnis:

id Name Adresse
1 John 123 Main St
2 Mary 456 Elm St
3 Bob NULL
  • richtige Verbindung:

    <code class="sql">SELECT *
    FROM Table1
    RIGHT JOIN Table2
    ON Table1.id = Table2.id;</code>
    Nach dem Login kopieren

    Ergebnis:

id Name Adresse
1 John 123 Main. St
2 Mary 456 Elm St
4 NULL 789 Oak St

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Inner Join, Left Join und Right Join in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!