CTE: Warum das Semikolon-Rätsel?
Common Table Expressions (CTEs) beginnen oft mit einem Semikolon (;), was einige Entwickler verwirrt. Wir gehen der Frage nach, warum das so ist.
Begründung für das Semikolon
Das Semikolon spielt eine entscheidende Rolle bei der Lösung von Mehrdeutigkeiten und der Sicherstellung des Abschlusses einer Anweisung. Das Schlüsselwort WITH wird in verschiedenen Kontexten verwendet:
Um Verwirrung zu vermeiden, a Semikolon vor dem CTE (z. B. ;WITH OrderedOrders AS) wird empfohlen. Dadurch wird sichergestellt, dass die vorherige Anweisung beendet wird, bevor der CTE beginnt.
Optionale Semikolons
Während Semikolons für die Anweisungsbeendigung in SQL Server im Allgemeinen optional sind, werden sie vor CTEs obligatorisch und MERGE-Befehle. Dies ist eine Schutzmaßnahme zur Vermeidung von Fehlern. Zum Beispiel:
DECLARE @foo int; WITH OrderedOrders AS ( SELECT SalesOrderID, OrderDate, ...
ist äquivalent zu:
DECLARE @foo int ;WITH OrderedOrders AS ( SELECT SalesOrderID, OrderDate, ...
Daher ist die Verwendung eines Semikolons vor CTEs eine gute Vorgehensweise, um mögliche Mehrdeutigkeiten zu vermeiden und eine ordnungsgemäße Ausführung sicherzustellen.
Das obige ist der detaillierte Inhalt vonSQL Server-CTEs: Warum das führende Semikolon?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!