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

Docker-Umgebung in Linux-Umgebung installieren (keine Fallstricke)

Inhaltsverzeichnis Installationsvoraussetzungen S...

Detaillierte Erläuterung der Vue-Lebenszyklusfunktionen

Inhaltsverzeichnis Lebenszyklusfunktionen Allgeme...

Allgemeine grundlegende Linux-Befehle und -Verwendung

Dieser Artikel veranschaulicht anhand von Beispie...

Was sind die Dateiattribute von crw, brw, lrw usw. in Linux?

Was ist eine Datei? Eigentlich sind alle Dateien ...

10 Tipps zur Verbesserung der Website-Benutzerfreundlichkeit

Ob Unternehmenswebsite, persönlicher Blog, Shoppi...

Linux entfernt node.js vollständig und installiert es über den Befehl yum neu

erster Schritt Einmaliges Löschen mit der integri...

Beispiel für die Implementierung von QR-Code-Scaneffekten mit CSS3

Online-Vorschau https://jsrun.pro/AafKp/ Erster B...

Detaillierte Erklärung der Rolle von Explain in MySQL

1. MySQL-Index Index: Eine Datenstruktur, die MyS...

Vue3 implementiert ein Beispiel für eine Nachrichtenkomponente

Inhaltsverzeichnis Komponentendesign Definieren d...

So deaktivieren Sie Webseitenstile mit dem Webentwickler von Firefox

Voraussetzung: Das Webentwickler-Plugin wurde inst...

Linux verwendet if, um zu bestimmen, ob ein Verzeichnis existiert.

So verwenden Sie „if“ in Linux, um festzustellen,...