Allgemeine Tabellenausdrücke werden unter Verwendung der WITH-Clausel definiert, die dem SELECT-Schlüsselwort in einer SELECT-Anweisung vorangestellt wird. Der Inhalt der Klausel definiert eine oder mehrere temporäre Ansichten, die dann später in der Anweisung referenziert werden. Die Syntax dieser Klausel ähnelt der einer CREATE VIEW-Anweisung. Unter Verwendung von allgemeinen Tabellenausdrücken können Sie die vorherige Abfrage folgendermaßen ausdrücken:
WITH CountEmployees( DepartmentID, n ) AS ( SELECT DepartmentID, COUNT( * ) AS n FROM Employees GROUP BY DepartmentID ) SELECT DepartmentID, n FROM CountEmployees WHERE n = ( SELECT MAX( n ) FROM CountEmployees ); |
Wenn die Abfrage so geändert wird, dass nach der Abteilung mit den wenigsten Mitarbeitern gesucht wird, können möglicherweise mehrere Zeilen zurückgeben werden.
WITH CountEmployees( DepartmentID, n ) AS ( SELECT DepartmentID, COUNT( * ) AS n FROM Employees GROUP BY DepartmentID ) SELECT DepartmentID, n FROM CountEmployees WHERE n = ( SELECT MIN( n ) FROM CountEmployees ); |
In der SQL Anywhere-Beispieldatenbank haben zwei Abteilungen die geringste Anzahl von Mitarbeitern, nämlich 9.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |