Heim  >  Artikel  >  Datenbank  >  Detaillierte Erläuterung der MySQL-Unterabfrageanweisung

Detaillierte Erläuterung der MySQL-Unterabfrageanweisung

PHPz
PHPzOriginal
2023-04-19 14:13:313557Durchsuche

MySQL ist ein relationales Datenbankverwaltungssystem, das häufig zur Datenspeicherung und -verwaltung verwendet wird. In MySQL ist eine Unterabfrage eine gängige Anweisungsform. In diesem Artikel werden die Unterabfrageanweisungen in MySQL vorgestellt und einige Beispiele gegeben, um den Lesern zu helfen, Unterabfragen besser zu verstehen und zu verwenden.

1. Was ist eine Unterabfrage? Eine Unterabfrage ist eine Abfrageanweisung, die in einer anderen Abfrage enthalten ist und normalerweise in einer SELECT-, INSERT-, UPDATE- oder DELETE-Anweisung verschachtelt ist. In MySQL können Unterabfragen als Teil einer Abfrage ausgeführt werden und Suchbedingungen oder berechnete Elemente bereitstellen. Unterabfragen sind eine sehr leistungsfähige Anweisungsform, die Abfragen flexibler, präziser und effizienter machen kann. Unterabfragen können auf mehreren Ebenen verschachtelt sein. Achten Sie jedoch darauf, die Abfrage nicht zu komplex zu machen.

2. Unterabfragesyntax

Die Unterabfragesyntax in MySQL kann in zwei Typen unterteilt werden: Ausdrucksunterabfrage und SELECT-Unterabfrage.

Ausdrucksunterabfragesyntax:
  1. SELECT … FROM … WHERE Spaltenname-Operator (SELECT Spaltenname FROM Tabellenname WHERE-Bedingung);

In dieser Syntax kann der Operator zwischen Konstanten und Feldnamen gleich, ungleich, kleiner als sein , größer als usw. Darüber hinaus darf das Ergebnis der Unterabfrage nur eine Zeile und eine Spalte enthalten, andernfalls wird ein Fehler zurückgegeben. Gleichzeitig können Sie mit Unterabfragen auch den Maximalwert, den Minimalwert, die Summe und den Durchschnitt im Ergebnissatz abfragen.

SELECT-Unterabfragesyntax:
  1. SELECT Spaltenname1, Spaltenname2, … FROM Tabellenname WHERE Spaltenname-Operator (SELECT Spaltenname FROM Tabellenname WHERE-Bedingung);

In dieser Syntax wird die SELECT-Unterabfrage zur WHERE-Klausel der äußeren Abfragemitte hinzugefügt . Die Unterabfrage muss einen einzelnen Wert zurückgeben, andernfalls wird ein Fehler zurückgegeben. Darüber hinaus kann die SELECT-Unterabfrage jede Art von Vergleichsoperation in der WHERE-Klausel ausführen.

3. Beispiele für Unterabfragen

Die folgenden Beispiele veranschaulichen die Verwendung von Unterabfragen in MySQL.

Fragen Sie die Informationen aller Schüler ab, deren Ergebnisse über dem Klassendurchschnitt liegen. (SELECT AVG(score) FROM student) pass Die Unterabfrage berechnet die durchschnittliche Punktzahl für die Klasse und vergleicht die durchschnittliche Punktzahl mit der Punktzahl jedes Schülers. Eventuell werden die Informationen berechtigter Studierender zurückgegeben.
  1. Fragen Sie den Namen der Abteilung ab, deren Mitarbeitergehalt höher ist als das Durchschnittsgehalt und das Durchschnittsgehalt der Abteilung. 🔜 Personen, deren Gehälter über dem Durchschnittsgehalt liegen, werden mit der Abteilungstabelle verknüpft und über eine Unterabfrage wird das Durchschnittsgehalt für das gesamte Unternehmen berechnet. Gruppieren Sie abschließend nach Abteilungsnamen, um den Namen und das Durchschnittsgehalt jeder Abteilung zu erhalten.

Überprüfen Sie, wie viele Bücher der Autor geschrieben hat, die mehr als 100 Seiten lang sind.

    SELECT COUNT(*) FROM Books WHERE author_id IN (SELECT author_id FROM author WHERE name = 'John Smith') AND length 100;
  1. In dieser Anweisung fragen Sie zunächst die ID des Autors „John Smith“ ab. und filtern Sie dann geeignete Bücher basierend auf der Autoren-ID und der Buchlänge heraus. Verwenden Sie abschließend die Funktion COUNT, um die Anzahl der Datensätze im Ergebnissatz der Abfrage zurückzugeben.

4. Zusammenfassung

Die Unterabfrage in MySQL ist eine sehr nützliche Anweisungsform, die die Genauigkeit und Effizienz der Abfrage weiter verbessern kann. In diesem Artikel werden die Unterabfragesyntax und Beispiele in MySQL vorgestellt. Durch das Lernen können Sie die Unterabfrageanweisungen von MySQL besser verstehen und beherrschen und den Lesern auch dabei helfen, die MySQL-Datenbank besser anzuwenden.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der MySQL-Unterabfrageanweisung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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