यह अब Postgres के संस्करण 9.5 में संभव है :
PostgreSQL 9.5 स्कीमा
CREATE TABLE basket(fruits text, a integer, b integer, c integer);
CREATE TABLE
INSERT INTO basket(fruits, a, b, c) values('apples', 1, 1, 1),
('apples', 0, 1, 2),
('bananas', 1, 1, 2),
('oranges', 1, 1, 1);
क्वेरी
SELECT coalesce(fruits,'total'), sum(a) a, sum(b) b, sum(c) c
FROM basket
GROUP BY ROLLUP((fruits))
परिणाम
fruits | a | b | c
---------+---+---+---
apples | 1 | 2 | 3
bananas | 1 | 1 | 2
oranges | 1 | 1 | 1
total | 3 | 4 | 6
यह ROLLUP
GROUPING SETS
के साथ एक्सप्रेशन का उपयोग करने के बराबर है :
SELECT fruits, sum(a) a, sum(b) b, sum(c) c
FROM basket
GROUP BY GROUPING SETS (fruits, ())
GROUPING SETS
में प्रत्येक सबलिस्ट इसकी व्याख्या उसी तरह की जाती है जैसे कि यह सीधे ग्रुप बाय क्लॉज में थी।