Heim >Datenbank >MySQL-Tutorial >So verwenden Sie die MySQL-Unterabfrage

So verwenden Sie die MySQL-Unterabfrage

王林
王林nach vorne
2023-06-02 23:09:411574Durchsuche

Korrelierte Unterabfrage

Korrelierter Unterabfrage-Ausführungsprozess

Wenn die Ausführung einer Unterabfrage von einer externen Abfrage abhängt, liegt dies normalerweise daran, dass die Tabelle in der Unterabfrage eine externe Tabelle verwendet und eine bedingte Zuordnung durchführt, also bei jeder Ausführung Sowohl die äußere Die Abfrage und die Unterabfrage müssen neu berechnet werden. Solche Unterabfragen werden als korrelierte Unterabfragen bezeichnet. Während jede Zeile der Hauptabfrage ausgeführt wird, werden die korrelierten Unterabfragen in zeilenweiser Reihenfolge ausgeführt.

So verwenden Sie die MySQL-Unterabfrage

Anleitung: Verwenden Sie die Spalten in der Hauptabfrage in der Unterabfrage

Titel: Fragen Sie den Nachnamen, das Gehalt und die Abteilungs-ID von Mitarbeitern ab, deren Gehalt über dem Durchschnittsgehalt der Abteilung liegt

Methode 1: Verwandte Unterabfrage

🔜 „virtuelle Tabelle“ verwendet wird. So verwenden Sie die MySQL-Unterabfrage

Titel: Mitarbeiter-ID und Gehalt abfragen, sortiert nach Abteilungsname.

Unterabfrage in ORDER BY verwenden:

SELECT last_name,salary,e1.department_id
FROM employees e1,(SELECT department_id,AVG(salary) dept_avg_sal FROM employees GROUP
BY department_id) e2
WHERE e1.`department_id` = e2.department_id
AND e2.dept_avg_sal < e1.`salary`;
die Bedingung in der Unterabfrage.

Wenn es keine Zeile gibt, die die Bedingung in der Unterabfrage erfüllt:

Die Bedingung gibt FALSE zurück.

Fahren Sie mit der Suche in der Unterabfrage fort.

Wenn es eine Zeile gibt, die die Bedingung in der Unterabfrage erfüllt:

Fahren Sie nicht fort Suche in der Unterabfrage

Die Bedingung gibt TRUE zurück. Das Schlüsselwort „NOT EXISTS“ bedeutet, dass TRUE zurückgegeben wird, wenn eine bestimmte Bedingung nicht existiert, andernfalls FALSE.

Titel: Fragen Sie die Mitarbeiter-ID, den Nachnamen, die Job-ID und die Abteilungs-ID-Informationen des Unternehmensleiters ab Beurteilung, daher ist die Self-Join-Verarbeitung in den meisten DBMS optimiert.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die MySQL-Unterabfrage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen