Verfügt MySQL über eine with as-Anweisung?

WBOY
Freigeben: 2022-01-20 14:21:43
Original
8361 Leute haben es durchsucht

Es gibt keine „with as“-Anweisung in Versionen von mysql5.7 und niedriger, aber es gibt eine „with as“-Anweisung in Versionen von mysql8.0 und höher. mysql5.7 unterstützt diese Anweisung nicht, kann aber sein implementiert durch Erstellen einer temporären Tabelle Mit dem gleichen Effekt wird diese Anweisung für Unterabfragen nach mysql8.0 unterstützt.

Verfügt MySQL über eine with as-Anweisung?

Die Betriebsumgebung dieses Tutorials: Windows10-System, MySQL8.0.22-Version, Dell G3-Computer.

Verfügt MySQL über eine with as-Anweisung

WITH AS-Unterabfrageteil [nicht unterstützt von mysql5.7 und niedriger, unterstützt von mysql8.0 und sqlserver]

Der Vorteil des Unterabfrageteils besteht darin, dass es sich um einen handelt Teilabfrage. Es ist besser, drei Tabellen zu haben. Die Verbindung erscheint mehrmals in einer Anweisung

Ein einzelner Unterabfrageteil

with a as (select * from Student a inner join Course b ON a.Id=b.StudentId )select * from a
Nach dem Login kopieren

Analyse: Auf diese Weise fragt jede Abfrage a in dieser Anweisung den gemeinsamen Abfragesatz der Studenten- und Kurstabellen ab

Syntax mehrerer Abfrageteile

with a as (select * from Student), b as (select * from Course) select * from a inner join b on a.Id=b.StudentId
Nach dem Login kopieren

Wenn mehrere Unterabfragen in einer gesamten Abfrage die Ergebnisse derselben Unterabfrage verwenden müssen, können Sie mit as die gemeinsam genutzte Unterabfrage extrahieren und einen Alias hinzufügen. Die nachfolgenden Abfrageanweisungen können direkt verwendet werden, was bei der Optimierung einer großen Anzahl komplexer SQL-Anweisungen eine sehr gute Rolle spielt.

Hinweis:

  • entspricht einer temporären Tabelle, wird jedoch im Gegensatz zu einer Ansicht nicht gespeichert und muss in Verbindung mit „select“ verwendet werden.

  • Vor derselben Auswahl können mehrere temporäre Tabellen stehen. Schreiben Sie einfach ein „with“ und trennen Sie sie durch Kommas.

  • With-Klausel sollte in Klammern eingeschlossen werden.

Um die Verwendung von with zusammenzufassen: Es ähnelt dem Erstellen einer temporären Tabelle.

Empfohlenes Lernen:MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonVerfügt MySQL über eine with as-Anweisung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!