PostgreSQL entspricht SQL Server GROUP BY WITH ROLLUP

8

Ich habe eine SQL Server-Abfrage, die die ROLLUP -Klausel bei der Gruppierung verwendet. Ich möchte eine gleichwertige Abfrage in Postgres. Abfrage in SQl Server ist:

%Vor%     
Satish Sharma 21.12.2012, 13:09
quelle

3 Antworten

16
%Vor%     
Clodoaldo Neto 21.12.2012, 13:52
quelle
9

Dies ist eine generische Antwort auf das Äquivalent von Rollup in PostgreSQL.

Gegeben eine Tabelle t:

%Vor%

Und diese SQL Server-Abfrage: SQL Fiddle

%Vor%

So geht's in Postgresql: SQL Fiddle

Erstellen Sie aggregierende CTEs beginnend mit dem Detail, das zur obersten Ebene geht:

%Vor%

Beachten Sie, dass für die Leistung die nächsthöhere Stufe aus der vorherigen unteren Ebene aggregiert.

Damit sind die CTEs, die die entsprechenden Labels erstellen, geeint:

%Vor%     
Clodoaldo Neto 20.03.2013 14:52
quelle
3

In Postgres 9.5 erschien GROUPING SETS, CUBE und ROLLUP: Ссылка

    
Hubbitus 26.10.2015 10:11
quelle