Wie lautet die Ausführungsreihenfolge der verschiedenen Teile einer SQL-Select-Anweisung?

8

Wie lautet die Ausführungsreihenfolge der verschiedenen Teile einer SQL-SELECT-Anweisung? Sowie
ausgeprägtes
von
Bestellung von
Gruppe von
einen
haben Mehrzeilenfunktion (count, avg, max, min ...)
oben (sql server) oder limit (mysql)
andere Teile

Haben die verschiedenen Datenbanken die gleiche Ausführungsreihenfolge? Vielen Dank.

    
Ogrish Man 11.04.2010, 16:10
quelle

3 Antworten

13

Sehen Sie sich

an

SQL SERVER - Logische Abfrageverarbeitungsphasen - Reihenfolge der Anweisungsausführung

  
  1. VON
  2.   
  3. EIN
  4.   
  5. OUTER
  6.   
  7. WO   
  8. GROUP BY
  9.   
  10. CUBE | ROLLUP
  11.   
  12. HABEN
  13.   
  14. WÄHLEN
  15.   
  16. UNTERSCHEIDEN
  17.   
  18. ORDER BY
  19.   
  20. OBEN
  21.   

Auch für einige gute Informationen siehe Logische Abfrageverarbeitung

    
Adriaan Stander 11.04.2010, 16:15
quelle
2

Die obige Antwort adressiert die Frage, aber es gibt eine Ausnahme zu der oben genannten Reihenfolge

wenn Sie

haben

Wählen Sie oben n ............

Bestellung von

Dann wird die Reihenfolge nach vor der Auswahl ausgeführt. (Die Einträge werden zuerst sortiert und dann die oberen n Einträge ausgewählt)

    
Naga 07.08.2013 15:06
quelle
0

Besuchen Sie Ссылка , um eine bessere Erklärung zu erhalten.

Die folgenden Schritte zeigen die logische Verarbeitungsreihenfolge oder Bindungsreihenfolge für eine SELECT-Anweisung. Diese Reihenfolge bestimmt, wann die in einem Schritt definierten Objekte den Klauseln in nachfolgenden Schritten zur Verfügung gestellt werden. Wenn der Abfrageprozessor beispielsweise an die in der FROM-Klausel definierten Tabellen oder Sichten gebunden werden kann (Zugriff), werden diese Objekte und ihre Spalten für alle nachfolgenden Schritte verfügbar gemacht. Umgekehrt, da die SELECT-Klausel Schritt 8 ist, kann auf alle Spaltenaliasnamen oder abgeleiteten Spalten, die in dieser Klausel definiert sind, nicht mit den vorhergehenden Klauseln verwiesen werden. Sie können jedoch durch nachfolgende Klauseln wie die ORDER BY-Klausel referenziert werden. Beachten Sie, dass die tatsächliche physische Ausführung der Anweisung vom Abfrageprozessor bestimmt wird und die Reihenfolge von dieser Liste abweichen kann.

VON

EIN

VERBINDEN

WO

GROUP BY

MIT CUBE oder MIT ROLLUP

HABEN

WÄHLEN

DISTINCT

ORDER BY

OBEN

    
Nitesh Kumar Singh 30.12.2015 10:01
quelle

Tags und Links