Heim Datenbank MySQL-Tutorial MySQL-Abfrageverbindung

MySQL-Abfrageverbindung

May 08, 2023 am 10:25 AM

Einführung in die MySQL-Abfrageverbindung

Bei der Datenbankverwaltung ist die Abfrageverbindung ein sehr wichtiger Bestandteil. Unter „Join“ versteht man den Prozess des Zusammenführens von zwei oder mehr Tabellen basierend auf der Beziehung zwischen ihnen, um die Datenabfrage abzuschließen. In MySQL können wir Abfrageverbindungen mithilfe der JOIN-Anweisung implementieren. Dieser Artikel bietet eine ausführliche Einführung in die Verwendung von MySQL-Abfrageverbindungen.

Klassifizierung von MySQL-Abfrageverbindungen

MySQL-Abfrageverbindungen werden hauptsächlich in drei Kategorien unterteilt: Inner Joins, Outer Joins und Cross Joins.

  1. INNER JOIN

Inner Join bedeutet, dass zwischen Datensätzen in zwei oder mehr Tabellen eine entsprechende Beziehung besteht. Diese Beziehung kann durch Primärschlüssel und Fremdschlüssel dargestellt werden. Inner Joins geben Ergebnisse zurück, indem sie dieselben Datensätze beibehalten. Das heißt, Abfrageergebnisse werden nur zurückgegeben, wenn in beiden Tabellen übereinstimmende Datensätze vorhanden sind.

Die Syntax des inneren Joins lautet wie folgt:

SELECT col1, col2, ...
FROM table1
INNER JOIN table2
ON table1.column1 = table2.column2;

Daunter col1, col2, ... zurückzugeben sind: Spalte table1 und table2 sind die abzufragenden Tabellen, Column1 und Column2 sind die Spalten, die die Tabellen verbinden.

  1. OUTER JOIN

Outer Joins werden in Left Joins und Right Joins unterteilt. Diese Art von Join bedeutet, dass bei der Verbindung von zwei oder mehr Tabellen alle Datensätze einbezogen werden, auch wenn eine der Tabellen nicht mit passenden Datensätzen verknüpft ist von einem anderen Tisch.

Left-Join: Left-Join bedeutet, dass die linke Tabelle alle Datensätze abruft, während die rechte Tabelle nur passende Datensätze abruft. Wenn zwischen der linken und der rechten Tabelle keine übereinstimmenden Datensätze vorhanden sind, gibt die rechte Tabelle einen NULL-Wert zurück.

Die Syntax des linken Joins lautet wie folgt:

SELECT col1, col2, ...
FROM table1
LEFT JOIN table2
ON table1.column1 = table2.column2;

Right Join: Right Join ähnelt dem Left Join , außer auf der linken Seite. Die Rollen der Tabelle und der Tabelle auf der rechten Seite sind vertauscht.

Die Syntax des rechten Joins lautet wie folgt:

SELECT col1, col2, ...
FROM table1
RIGHT JOIN table2
ON table1.column1 = table2.column2;

Hinweis: In MySQL gibt es auch ein FULL OUTER für äußere Verknüpfungen JOIN (vollständige äußere Verknüpfung), MySQL unterstützt dies jedoch nicht. Daher können wir über die UNION-Anweisung einen vollständigen Outer-Join simulieren.

  1. CROSS JOIN

Cross Join bezieht sich auf einen Join ohne Join-Bedingungen zwischen zwei oder mehr Tabellen. Einfach ausgedrückt ermöglichen Cross-Joins die Abfrage aller möglichen Kombinationen.

Die Syntax des Cross-Joins lautet wie folgt:

SELECT col1, col2, ...
FROM table1
CROSS JOIN table2;

Unter diesen sind col1, col2, ... die zurückzugebenden Spalten; table2 soll als Oberfläche abgefragt werden.

Anwendungsbeispiele für die MySQL-Abfrageverbindung

Lassen Sie uns nun die Verwendung der MySQL-Abfrageverbindung anhand einiger praktischer Beispiele verstehen.

Beispiel 1: Innerer Join

Angenommen, wir haben zwei Tabellen „Schüler“ und „Kurs“. Ihre Spalten und Inhalte lauten wie folgt:

Studententabelle:

ID Name Alter
1 Jack 18
2 Tom 19
3 Jerry 20
4 Bob 18

Kurstabelle:

3Wissenschaft24Geschichte3
Kurs-ID Kursname Studenten-ID
1 Mathe 1
2 Englisch 2
Da wir nun die von jedem Studenten ausgewählten Kurse abfragen möchten, können wir die folgende SQL-Anweisung verwenden:

SELECT student.name, course.course_name

FROM student
INNER JOIN course
ON student .id = course.student_id;

Diese Abfrage gibt die folgenden Ergebnisse zurück:

NameKursnameJackMathTomEnglisch TomWissenschaft JerryGeschichte
Beispiel 2: Left Join

Nehmen wir immer noch die obige Studententabelle und Kurstabelle als Beispiel, wenn wir die von jedem Studenten ausgewählten Kurse abfragen möchten, einschließlich derjenigen, die haben keinen Kursteilnehmer ausgewählt. Sie können die folgende SQL-Anweisung verwenden:

SELECT student.name, course.course_name

FROM student
LEFT JOIN course
ON student.id = course.student_id;

Die Abfrage gibt die folgenden Ergebnisse zurück:

NameKursnameJackMatheTomEnglischTomNaturwissenschaftenJerry GeschichteBobNULL
Beispiel 3: Right Join

Verwenden Sie weiterhin die obige Studententabelle und Kurstabelle als Beispiel, wenn wir die Studenten jedes Kurses abfragen möchten, einschließlich der Studenten, die den Kurs nicht ausgewählt haben. Sie können die folgende SQL-Anweisung verwenden:

SELECT student.name, course.course_name

FROM student
RIGHT JOIN course
ON student.id = course.student_id;

Die Abfrage gibt die folgenden Ergebnisse zurück:

erryGeschichteNULLGeographie

Beispiel 4: Querverbindung

Durch die Querverbindung können Sie alle möglichen Kombinationen abfragen. Wir haben beispielsweise eine Tabelle, die drei Elemente A, B und C enthält:

# 🎜 🎜#Tabelle1:

Name
idName#🎜 🎜 # 12#🎜 🎜 # 3CWir können die folgende SQL-Anweisung verwenden, um Cross-Joins durchzuführen: # 🎜🎜#SELECT t1.name, t2.name
A
B
FROM table1 t1

CROSS JOIN table1 t2;

Diese Abfrage gibt die folgenden Ergebnisse zurück: #🎜🎜 #

Name

NameA#🎜 🎜#A# ?? #B#🎜🎜 #BC#🎜 🎜## 🎜🎜#ABFazitDie MySQL-Abfrageverbindung ist ein wichtiger Teil der SQL-Sprache und kann uns dabei helfen, Daten abzufragen, die Beziehungen enthalten. In diesem Artikel stellen wir die Syntax und Anwendungsbeispiele der vier Arten von Joins vor: Inner Join, Left Join, Right Join und Cross Join. Ich hoffe, dieser Artikel hilft Ihnen bei der Verwendung der MySQL-Abfrageverbindung.
#🎜🎜 #A
A B
B
C
C
C#🎜 🎜##🎜🎜 #C

Das obige ist der detaillierte Inhalt vonMySQL-Abfrageverbindung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung? Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung? Mar 19, 2025 pm 03:51 PM

In dem Artikel werden mithilfe der Änderungstabelle von MySQL Tabellen, einschließlich Hinzufügen/Löschen von Spalten, Umbenennung von Tabellen/Spalten und Ändern der Spaltendatentypen, erläutert.

Wie konfiguriere ich die SSL/TLS -Verschlüsselung für MySQL -Verbindungen? Wie konfiguriere ich die SSL/TLS -Verschlüsselung für MySQL -Verbindungen? Mar 18, 2025 pm 12:01 PM

In Artikel werden die Konfiguration der SSL/TLS -Verschlüsselung für MySQL, einschließlich der Erzeugung und Überprüfung von Zertifikaten, erläutert. Das Hauptproblem ist die Verwendung der Sicherheitsauswirkungen von selbstsignierten Zertifikaten. [Charakterzahl: 159]

Wie behandeln Sie große Datensätze in MySQL? Wie behandeln Sie große Datensätze in MySQL? Mar 21, 2025 pm 12:15 PM

In Artikel werden Strategien zum Umgang mit großen Datensätzen in MySQL erörtert, einschließlich Partitionierung, Sharding, Indexierung und Abfrageoptimierung.

Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)? Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)? Mar 21, 2025 pm 06:28 PM

In Artikel werden beliebte MySQL -GUI -Tools wie MySQL Workbench und PhpMyAdmin beschrieben, die ihre Funktionen und ihre Eignung für Anfänger und fortgeschrittene Benutzer vergleichen. [159 Charaktere]

Wie lassen Sie eine Tabelle in MySQL mit der Drop -Tabelle -Anweisung fallen? Wie lassen Sie eine Tabelle in MySQL mit der Drop -Tabelle -Anweisung fallen? Mar 19, 2025 pm 03:52 PM

In dem Artikel werden in MySQL die Ablagerung von Tabellen mithilfe der Drop -Tabellenerklärung erörtert, wobei Vorsichtsmaßnahmen und Risiken betont werden. Es wird hervorgehoben, dass die Aktion ohne Backups, die Detaillierung von Wiederherstellungsmethoden und potenzielle Produktionsumfeldgefahren irreversibel ist.

Wie erstellen Sie Indizes für JSON -Spalten? Wie erstellen Sie Indizes für JSON -Spalten? Mar 21, 2025 pm 12:13 PM

In dem Artikel werden in verschiedenen Datenbanken wie PostgreSQL, MySQL und MongoDB Indizes für JSON -Spalten in verschiedenen Datenbanken erstellt, um die Abfrageleistung zu verbessern. Es erläutert die Syntax und die Vorteile der Indizierung spezifischer JSON -Pfade und listet unterstützte Datenbanksysteme auf.

Wie repräsentieren Sie Beziehungen mit fremden Schlüsseln? Wie repräsentieren Sie Beziehungen mit fremden Schlüsseln? Mar 19, 2025 pm 03:48 PM

In Artikeln werden ausländische Schlüssel zur Darstellung von Beziehungen in Datenbanken erörtert, die sich auf Best Practices, Datenintegrität und gemeinsame Fallstricke konzentrieren.

Wie sichere ich mich MySQL gegen gemeinsame Schwachstellen (SQL-Injektion, Brute-Force-Angriffe)? Wie sichere ich mich MySQL gegen gemeinsame Schwachstellen (SQL-Injektion, Brute-Force-Angriffe)? Mar 18, 2025 pm 12:00 PM

Artikel erläutert die Sicherung von MySQL gegen SQL-Injektions- und Brute-Force-Angriffe unter Verwendung vorbereiteter Aussagen, Eingabevalidierung und starken Kennwortrichtlinien (159 Zeichen).

See all articles