Detaillierte Erklärung zur Verwendung von Join in Mysql

Detaillierte Erklärung zur Verwendung von Join in Mysql

In den vorherigen Kapiteln haben wir gelernt, wie man Daten aus einer Tabelle liest, was relativ einfach ist, aber in realen Anwendungen müssen wir oft Daten aus mehreren Tabellen lesen.

In diesem Abschnitt stellen wir vor, wie Sie MySQL JOIN verwenden, um Daten in zwei oder mehr Tabellen abzufragen.

Sie können MySQL Join verwenden, um mehrere Tabellen in SELECT-, UPDATE- und DELETE-Anweisungen zu kombinieren.

Im Folgenden demonstrieren wir den Unterschied zwischen der Verwendung von MySQL LEFT JOIN und JOIN.

Verwenden von JOIN in der Eingabeaufforderung

Wir haben zwei Tabellen tcount_tbl und runoob_tbl in der RUNOOB-Datenbank. Die Daten in den beiden Datentabellen lauten wie folgt:

Beispiele

Probieren Sie die folgenden Beispiele aus:

root@host#mysql -u root -p Passwort;
Passwort eingeben:*******
mysql> verwende RUNOOB;
Datenbank geändert
mysql> AUSWÄHLEN * VON tcount_tbl;
+-----------------+----------------+
| runoob_Autor | runoob_Anzahl |
+-----------------+----------------+
| Mahran | 20 |
| mahnaz | NULL |
| Jen | NULL |
| Gill | 20 |
| John Poul | 1 |
| Sanjay | 1 |
+-----------------+----------------+
6 Zeilen im Satz (0,01 Sek.)
mysql> AUSWÄHLEN * von runoob_tbl;
+-------------+----------------+-----------------+-----------------+
| runoob_id | runoob_titel | runoob_autor | Einreichungsdatum |
+-------------+----------------+-----------------+-----------------+
| 1 | PHP lernen | John Poul | 24.05.2007 |
| 2 | MySQL lernen | Abdul S | 24.05.2007 |
| 3 | JAVA-Tutorial | Sanjay | 06.05.2007 |
+-------------+----------------+-----------------+-----------------+
3 Zeilen im Satz (0,00 Sek.)
MySQL>

Als Nächstes verwenden wir MySQL JOIN, um die beiden obigen Tabellen zu verbinden und die Werte des Felds runoob_count zu lesen, die allen Feldern runoob_author in der Tabelle runoob_tbl in der Tabelle tcount_tbl entsprechen:

mysql> AUSWÄHLEN a.runoob_id, a.runoob_author, b.runoob_count
 -> VON runoob_tbl a, tcount_tbl b
 -> WO a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+
| runoob_id | runoob_autor | runoob_anzahl |
+-------------+-----------------+----------------+
| 1 | John Poul | 1 |
| 3 | Sanjay | 1 |
+-------------+-----------------+----------------+
2 Zeilen im Satz (0,01 Sek.)
MySQL>

Verwenden von JOIN in PHP-Skripten

PHP verwendet die Funktion mysql_query(), um SQL-Anweisungen auszuführen. Sie können dieselbe SQL-Anweisung als Parameter der Funktion mysql_query() verwenden.

Versuchen Sie das folgende Beispiel:

<?php
$dbhost = "localhost:3036";
$dbuser = "root";
$dbpass = 'Root-Passwort';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
wenn(!$conn)
{
 die('Verbindung konnte nicht hergestellt werden: ' . mysql_error());
}
$sql = 'SELECT a.runoob_id, a.runoob_author, b.runoob_count
  VON runoob_tbl a, tcount_tbl b
  WO a.runoob_author = b.runoob_author';
mysql_select_db('RUNOOB');
: $retval = mysql_query( $sql, $conn );
wenn(!$retval )
{
 die('Daten konnten nicht abgerufen werden: ' . mysql_error());
}
während($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
 echo "Autor:{$row['runoob_author']} <br> ".
   „Anzahl: {$row['runoob_count']} <br> “.
   „Tutorial-ID: {$row['runoob_id']} <br> “.
   "---------------------------------<br>";
} 
echo "Daten erfolgreich abgerufen\n";
mysql_close($conn);
?>

MySQL LEFT JOIN

MySQL Left Join unterscheidet sich vom Join. MySQL LEFT JOIN liest alle Daten in der linken Tabelle, auch wenn in der rechten Tabelle keine entsprechenden Daten vorhanden sind.

Beispiele

Probieren Sie die folgenden Beispiele aus, um die Anwendung von MySQL LEFT JOIN zu verstehen:

root@host#mysql -u root -p Passwort;
Passwort eingeben:*******
mysql> verwende RUNOOB;
Datenbank geändert
mysql> AUSWÄHLEN a.runoob_id, a.runoob_author, b.runoob_count
 -> VON runoob_tbl a LINKS VERBINDEN tcount_tbl b
 -> EIN a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+
| runoob_id | runoob_autor | runoob_anzahl |
+-------------+-----------------+----------------+
| 1 | John Poul | 1 |
| 2 | Abdul S | NULL |
| 3 | Sanjay | 1 |
+-------------+-----------------+----------------+
3 Reihen im Satz (0,02 Sek.)

Im obigen Beispiel wird LEFT JOIN verwendet. Diese Anweisung liest alle ausgewählten Felddaten aus der linken Datentabelle runoob_tbl, auch wenn in der rechten Tabelle tcount_tbl kein entsprechender Feldwert runoob_author vorhanden ist.

Oben finden Sie eine ausführliche Erklärung des Herausgebers zur Verwendung von Join in MySQL. Ich hoffe, dass sie für alle hilfreich ist. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Grundlegende MySQL-Tabellenabfragen – häufige Fehler beim Left-Join
  • Zusammenfassung verschiedener gängiger Abfragebeispiele für Join-Tabellen in MySQL
  • Stabile Version von MySQL 8.0.18 veröffentlicht! Hash Join ist wie erwartet da
  • Join-Operation in MySQL
  • Tiefgreifendes Verständnis der MySQL-Selbstverbindung und Join-Assoziation
  • Anwendungsbeispiele für den Mysql Inner Join (unbedingt lesen)
  • Zusammenfassung der sieben MySQL JOIN-Typen

<<:  VUE implementiert Saugknopf an der Unterseite

>>:  So konfigurieren Sie Java-Umgebungsvariablen im Linux-System

Artikel empfehlen

Detaillierte Erklärung zur Verwendung der JavaScript-Paging-Komponente

Die Paginierungskomponente ist eine häufige Kompo...

So erhalten Sie USB-Scannerdaten mit js

In diesem Artikel wird der spezifische Prozess zu...

MySQL-Performance-Optimierung: So nutzen Sie Indizes effizient und richtig

Die Praxis ist der einzige Weg, die Wahrheit zu t...

Zusammenfassung der Tipps zur Verwendung von coalesce() in MySQL

Vorwort Kürzlich habe ich zufällig MySQLs Coalesc...

So verwalten Sie Docker über die Benutzeroberfläche

Docker wird in immer mehr Szenarien verwendet. Fü...

Spezifische Verwendung des Linux-gcc-Befehls

01. Befehlsübersicht Der Befehl gcc verwendet den...

Detaillierte Erläuterung gängiger Vorgänge für Docker-Images und -Container

Bildbeschleuniger Manchmal ist es schwierig, Bild...

Detaillierte Erklärung zur Verwendung von umask unter Linux

Ich habe vor Kurzem angefangen, Linux zu lernen. ...

Sekundäre Kapselung des Elements el-table table (mit Tischhöhenanpassung)

Vorwort Während meines Praktikums in der Firma ha...

Zwei Lösungen für das 404-Problem beim Aktualisieren des Vue-Paket-Upload-Servers

1: Nginx-Serverlösung, ändern Sie die .conf-Konfi...

Der einfachste Weg zum Debuggen gespeicherter Prozeduren in MySQL

Ein Kollege hat mir einmal gesagt, ich solle eine...

Tutorial-Diagramm zur VMware-Installation des Ubuntu 20.04-Betriebssystems

Memo: Einfach erleben. Eintrag: Nr. 209 Diese Bei...