Eine kurze Analyse des Unterschieds zwischen und und wo in der MySQL-Verbindungsabfrage

Eine kurze Analyse des Unterschieds zwischen und und wo in der MySQL-Verbindungsabfrage

1. Erstellen Sie eine Tabelle

CREATE TABLE `student` (
  `id` int(11) NICHT NULL,
  `name` varchar(255) ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_general_ci NULL STANDARD NULL,
  `Alter` int(11) NULL DEFAULT NULL,
  PRIMÄRSCHLÜSSEL (`id`) MIT BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamisch;


INSERT INTO `student` VALUES (1, 'Student', 12);
INSERT INTO `student` VALUES (2, 'Student', 12);
INSERT INTO `student` VALUES (3, 'Student', 12);
INSERT INTO `student` VALUES (4, 'Student', 12);
INSERT INTO `student` VALUES (5, 'Student', 12);
INSERT INTO `Student` VALUES (6, 'Schildkröte', 12);
CREATE TABLE `Klasse` (
  `id` int(11) NICHT NULL,
  `sid` int(11) NULL DEFAULT NULL,
  `Klasse` int(11) NULL DEFAULT NULL,
  PRIMÄRSCHLÜSSEL (`id`) MIT BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamisch;

INSERT INTO `Klasse` VALUES (1, 1, 100);
INSERT INTO `Klasse` VALUES (2, 2, 80);
INSERT INTO `Klasse` VALUES (3, 3, 99);
INSERT INTO `Klasse` VALUES (4, 4, 66);

2. Innerer Join

Bei inneren Verknüpfungen gibt es keinen Unterschied zwischen und und wo. Beide verwenden die Ergebnisse nach der Verknüpfung, um eine bedingte Überprüfung durchzuführen.

2.1 Keine Bedingungen

2.2 und Zustand

2.3 Wobei-Bedingung

3. Links verbinden

3.1 Keine Bedingungen

3.2 und Zustand

Beim Left Join wird für die Verbindung eine vollständige Übereinstimmung mit der linken Tabelle hergestellt und anschließend AND zum Filtern verwendet. Die Daten der linken Tabelle, die die Bedingungen nicht erfüllen, werden beibehalten, und die Daten der rechten Tabelle sind null.

3.3 Wobei-Bedingung

Beim Left Join wird die linke Tabelle vollständig für die Verbindung abgeglichen und dann wird die Where-Klausel zum Filtern verwendet; nur die Daten, die die Bedingungen erfüllen, werden gefiltert.

4. richtig beitreten

Dasselbe wie Left Join in 3, außer dass die Basistabellen vertauscht sind.

5. Fazit

  • Verwenden Sie für alle Verbindungen „where“, um nach der Verbindung die Datenzeilen zu filtern, die die Bedingungen erfüllen, und behalten Sie nur die Datenzeilen bei, die die Bedingungen erfüllen.
  • Wenn Left Join verwendet wird und die linke Tabelle als Haupttabelle verwendet wird, bleiben alle Daten in der linken Tabelle erhalten und die Datenzeilen, die die Bedingungen nicht erfüllen, werden in der rechten Tabelle auf Null gesetzt.
  • Wenn Right Join verwendet wird und die rechte Tabelle als Haupttabelle verwendet wird, bleiben alle Daten in der rechten Tabelle erhalten und die Daten der linken Tabelle, die die Bedingungen nicht erfüllen, sind null.

Dies ist das Ende dieses Artikels über den Unterschied zwischen und und wo in der MySQL-Verbindungsabfrage. Weitere relevante MySQL-Verbindungsabfragen und wo-Inhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Mysql-Abfrageanweisung mit mehreren Bedingungen und dem Schlüsselwort „And“
  • MySQL bedingte Abfrage und/oder Verwendung und Priorität Beispielanalyse
  • Prioritätsanalyse von und/oder Abfragen in MySQL
  • MySQL Left-Join-Mehrtabellenabfrage, bei der das Schreiben einer Where-Bedingung ein Beispiel ist
  • Ein Beispiel, wie PHP MySQL-Abfrageergebnisse in ein Array konvertiert und sie mit where verknüpft.
  • Analyse des Unterschieds zwischen „Platzieren auf“ und „Wo“ in MySQL-Abfragebedingungen

<<:  Zusammenfassung der Updates und gefundenen Probleme des Docker Consul-Containerdienstes

>>:  Einführung in CSS-Stileinführungsmethoden und ihre Vor- und Nachteile

Artikel empfehlen

Interpretation von 17 Werbewirksamkeitsmaßen

1. 85 % der Anzeigen werden nicht gelesen <br ...

Löschen Sie den Image-Vorgang von „none“ in Docker-Images

Da ich normalerweise den Befehl „Docker Build“ ve...

Untersuchung des Wertes des Positionsattributs in CSS (Zusammenfassung)

Das CSS-Positionsattribut gibt den Positionierung...

So schreiben Sie ein MySQL-Sicherungsskript

Vorwort: Die Bedeutung einer Datenbanksicherung l...

js realisiert 3D-Soundeffekte durch audioContext

In diesem Artikel wird der spezifische Code von j...

Document Object Model (DOM) in JavaScript

Inhaltsverzeichnis 1. Was ist DOM 2. Elemente aus...

jQuery-Plugin zum Erzielen eines Code-Rain-Effekts

In diesem Artikel wird der spezifische Code des j...

Eine kurze Diskussion über das Funktionswissen von Python

Inhaltsverzeichnis Zwei Hauptkategorien von Funkt...

Detaillierte Erklärung zum effizienten MySQL-Paging

Vorwort Normalerweise wird für MySQL-Abfragen mit...

HTML-Cellpadding- und Cellspacing-Attribute in Bildern erklärt

Zelle -- der Inhalt der Tabelle Zellenrand (Tabell...

CSS3 realisiert Textreliefeffekt, Gravureffekt, Flammentext

Um diesen Effekt zu erzielen, müssen Sie zunächst...