Anwendungsbeispiele für den Mysql Inner Join (unbedingt lesen)

Anwendungsbeispiele für den Mysql Inner Join (unbedingt lesen)

Grammatikregeln

SELECT Spaltenname(n)
FROM Tabellenname1
INNER JOIN Tabellenname2 
ON Tabellenname1.Spaltenname=Tabellenname2.Spaltenname

Erstellen Sie zunächst zwei Tabellen, 1. Benutzer, 2. Benutzerkategorie

Benutzertabelle

CREATE TABLE `Benutzer` (
 `id` int(32) NICHT NULL AUTO_INCREMENT,
 `name` varchar(16) NICHT NULL,
 `kindid` int(32) NICHT NULL,
 PRIMÄRSCHLÜSSEL (`id`)
)ENGINE=MyISAM STANDARD-CHARSET=utf8;

Benutzerkategorietabelle

CREATE TABLE `Benutzerkind` (
 `id` int(32) NICHT NULL AUTO_INCREMENT,
 `kindname` varchar(16) NICHT NULL,
 PRIMÄRSCHLÜSSEL (`id`)
)ENGINE=MyISAM STANDARD-CHARSET=utf8;

Fügen Sie einige Daten in die Benutzertabelle ein

INSERT INTO `user` VALUES (1,'Xiao Ming',1),(2,'Xiao Hong',1),(3,'Han Han',2); Fügen Sie einige Daten in die Userkind-Tabelle ein

INSERT INTO `userkind` VALUES (1,'Ordentliches Mitglied'),(2,'VIP-Mitglied');

Wie in der Abbildung gezeigt:

Nachfolgend sehen Sie ein Beispiel für eine Konsolenabfrage:

Passwort eingeben: ****
Willkommen beim MySQL-Monitor. Befehle enden mit ; ​​oder \g.
Ihre MySQL-Verbindungs-ID ist 2
Serverversion: 5.5.40 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle und/oder Tochtergesellschaften. Alle Rechte vorbehalten.

Oracle ist eine eingetragene Marke der Oracle Corporation und/oder ihrer
Tochtergesellschaften. Andere Namen können Marken ihrer jeweiligen
Eigentümer.

Geben Sie „help;“ oder „\h“ ein, um Hilfe zu erhalten. Geben Sie „\c“ ein, um die aktuelle Eingabeanweisung zu löschen.

mysql> Join verwenden;
Datenbank geändert
mysql> wähle * von „Benutzer“;
+----+------+--------+
| ID | Name | Kinder-ID |
+----+------+--------+
| 1 | Xiao Ming | 1 |
| 2 | Xiaohong | 1 |
| 3 | Hanhan | 2 |
+----+------+--------+
3 Zeilen im Satz (0,00 Sek.)

mysql> wähle * aus „Benutzerkind“;
+----+----------+
| ID | Artname |
+----+----------+
| 1 | Ordentliches Mitglied|
| 2 | VIP-Mitgliedschaft |
+----+----------+
2 Zeilen im Satz (0,00 Sek.)

mysql> wähle * von „Benutzer“ innerer Join „Benutzerkind“ auf user.kindid=userkind.id;
+----+------+--------+----+----------+
| ID | Name | Kind-ID | ID | Kindname |
+----+------+--------+----+----------+
| 1 | Xiao Ming | 1 | 1 | Ordentliches Mitglied |
| 2 | Xiaohong | 1 | 1 | Ordentliches Mitglied |
| 3 | Hanhan | 2 | 2 | VIP-Mitglied |
+----+------+--------+----+----------+
3 Reihen im Satz (0,02 Sek.)

mysql> wähle `id` als `Benutzer-ID`,`name` als `Benutzername`,`kindname` als `Benutzerkategorie` aus
`user` innerer Join `userkind`, wobei user.kindid=userkind.id;
FEHLER 1052 (23000): Spalte „id“ in der Feldliste ist mehrdeutig
mysql> wähle `user`.`id` als `Benutzer-ID`,`name` als `Benutzername`,`kindname` als `Benutzerkategorie` aus
  -> `user` innerer Join `userkind`, wobei `user`.`kindid`=`userkind`.`id`;
+--------+--------+----------+
| Benutzer-ID | Benutzername | Benutzerkategorie |
+--------+--------+----------+
| 1 | Xiao Ming | Ordentliches Mitglied |
| 2 | Xiaohong | Ordentliches Mitglied |
| 3 | Hanhan | VIP-Mitglied |
+--------+--------+----------+
3 Zeilen im Satz (0,00 Sek.)

mysql> wähle `user`.`id` als `userID`, `name` als `username`, `kindname` als `userkind` aus `user` inner join `userkind` auf `user`.`kindid`=`userkind`.`id`;
+--------+--------+----------+
| Benutzer-ID | Benutzername | Benutzerkategorie |
+--------+--------+----------+
| 1 | Xiao Ming | Ordentliches Mitglied |
| 2 | Xiaohong | Ordentliches Mitglied |
| 3 | Hanhan | VIP-Mitglied |
+--------+--------+----------+
3 Zeilen im Satz (0,00 Sek.)

MySQL>

Es sollte beachtet werden, dass hier im Wesentlichen gleichbedeutend ist mit wo (meiner Meinung nach)

Wenn eine Spalte in beiden Tabellen vorhanden ist, aber nicht unterschieden werden kann, müssen Sie „Tabellenname“. „Feldname“ verwenden, um sie zu unterscheiden.

as ist ein Alias. Schauen Sie sich einfach das Beispiel oben an!

Das obige Anwendungsbeispiel für Mysql Inner Join (unbedingt lesen) ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen.

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
  • Detaillierte Erklärung zur Verwendung von Join in Mysql
  • Zusammenfassung der sieben MySQL JOIN-Typen

<<:  Beispielcode für die Batchbereitstellung von Nginx mit Ansible

>>:  Einführung in Docker-Container

Artikel empfehlen

Erste Schritte mit GDB unter Linux

Vorwort gdb ist ein sehr nützliches Debugging-Too...

Zusammenfassung der Erfahrungen und Fähigkeiten im Webdesign

■ Planung des Website-Themas Achten Sie darauf, da...

MySQL 5.6.33 Installations- und Konfigurations-Tutorial unter Linux

In diesem Tutorial erfahren Sie alles über die In...

So zeigen Sie verfügbare Netzwerkschnittstellen in Linux an

Vorwort Die häufigste Aufgabe nach der Installati...

Eine Methode zum Erstellen von Karussellbildern mit CSS3

Diashows sieht man häufig auf Webseiten. Sie enth...

Fallstudie zu JavaScript-Ereignisschleifen

Ereignisschleife in js Da JavaScript ein Single-T...

Detaillierte Erklärung zum Anpassen des Stils von CSS-Bildlaufleisten

Dieser Artikel stellt den CSS-Bildlaufleistensele...

Verstehen Sie alle Aspekte von HTTP-Headern mit Bildern und Text

Was sind HTTP-Header HTTP ist eine Abkürzung für ...

Verwendung und Ausführungsprozess des HTTP-Moduls im Knoten

Welche Rolle spielt http im Knoten? Die Aufgabe d...

Erfahren Sie, wie Sie Vue3 Reactivity implementieren

Inhaltsverzeichnis Vorwort Start Ein kleiner Geda...

Docker-Fallanalyse: Erstellen eines MySQL-Datenbankdienstes

Inhaltsverzeichnis 1 Konfigurations- und Datenver...

Zusammenfassung wichtiger MySQL-Protokolldateien

Autor: Ding Yi Quelle: https://chengxuzhixin.com/...

Hinweise zur IE8-Kompatibilität, die mir aufgefallen sind

1. getElementById von IE8 unterstützt nur IDs, nic...