over(partition by …)


BigQueryDb2 (LUW)DerbyH2MariaDBMySQLOracle DBPostgreSQLSQL ServerSQLite200720092011201320152017201920212023✓ 3.25.0 - 3.50.0⊘ 3.5.7 - 3.23.1✓ 2008R2 - 2022✓ 8.4 - 17⊘ 8.3✓ 11gR1 - 23.9✓ 8.0.11 - 9.4.0⊘ 5.0 - 5.7✓ 10.2 - 12.0.2⊘ 5.1 - 10.1✓ 1.4.198 - 2.3.232⊘ 1.4.191 - 1.4.197⊘ 10.15.1.3 - 10.17.1.0✓ 9.7 - 12.1.2✓ 2.0

Die Over-Klausel akzeptiert eine optionale Partition By-Klausel, mit der die Sichtbarkeit der Fensterfunktion auf die Zeilen mit den „gleichen“ Werten in den Partition By-Ausdrücken eingeschränkt wird.

SELECT *, COUNT(*) OVER(PARTITION BY c1, c2)
  FROM …

Liefert die unveränderte Tabelle mit einer weiteren Spalte, in der steht wie viele Zeilen es jeweils mit den „gleichen“ Werten in den Spalten c1 und c2 gibt.

In diesem Zusammenhang bedeutet „gleicher“ Wert dass sie im Sinne von is not distinct from ununterscheidbar voneinander sind. Das heißt, dass Null-Werte als „gleich“ angesehen werden – analog zur Group By-Klausel.

Normative Referenzen

Die Over-Klausel, inklusive Partition By, ist als Teil der optionalen Funktion T611, „Elementary OLAP operations“ in ISO/IEC 9075-2:2023 definiert.

20 Jahre SQL-Evolution kann man nicht an einem Tag nachholen. Abonniere den Newsletter via E-Mail, Bluesky oder RSS, um sukzessive aufzuholen und modern-sql.com am Radar zu behalten.

Über den Autor

Foto von Markus Winand

Markus Winand gibt auf modern-sql.com Einblick in SQL und zeigt, wie es von verschiedenen Systemen unterstützt wird. Zuvor machte er use-the-index-luke.com, was er noch immer wartet. Markus kann als Trainer, Sprecher und Berater auf winand.at engagiert werden.

Sein Buch kaufen

Titelbild von „SQL Performance Explained“: Eichhörnchen läuft durchs Grass

Die Essenz: SQL-Tuning auf 200 Seiten

Jetzt Kaufen
(Taschenbuch und/oder PDF)

Sein Training

Markus verwandelt veraltetes SQL-92-Wissen in solides und zeitgemäßes SQL-Know-how

Erfahren Sie mehr»

Neuigkeiten Abonnieren

Markus Winands MailinglistenMarkus Winands RSS-FeedMarkus Winand auf LinkedInMarkus Winand auf XINGMarkus Winand auf TwitterMarkus Winand auf Bluesky
Copyright 2015-2025 Markus Winand. Alle Rechte vorbehalten.
Impressum | Kontakt | KEINE GEWÄHR | Handelsmarken | Datenschutz und DSGVO