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

Zwei Möglichkeiten zur Visualisierung von ClickHouse-Daten mit Apache Superset

Apache Superset ist ein leistungsstarkes BI-Tool,...

React realisiert den gesamten Prozess des Seitenwasserzeicheneffekts

Inhaltsverzeichnis Vorwort 1. Anwendungsbeispiele...

So aktualisieren Sie Ubuntu 20.04 LTS unter Windows 10

23. April 2020: Heute können Sie mit Ubuntu 20.04...

JS implementiert das Baidu-Suchfeld

In diesem Artikelbeispiel wird der spezifische JS...

Eine detaillierte Einführung in Linux-Dateiberechtigungen

Die Stärke von Linux liegt in seinem Mehrbenutzer...

Natives JS zur Implementierung einer Echtzeituhr

Teilen Sie einen Echtzeituhreffekt, der mit nativ...

Detaillierte Erklärung zur Verwendung von $props, $attrs und $listeners in Vue

Inhaltsverzeichnis Hintergrund 1. Dokumentbeschre...

Einführung in RHCE-Bridging, passwortfreie Anmeldung und Portnummernänderung

Inhaltsverzeichnis 1. Konfigurieren Sie Bridging ...