The GROUP BY clause can be used in a SELECT statement to collect data across multiple records and group the results by one or more columns.
ROLLUP
enables a SELECT
statement to calculate multiple levels of
subtotals across a specified group of dimensions. It also calculates a grand
total. ROLLUP
is
a simple extension to the GROUP
BY
clause, so its syntax is extremely easy to use. The ROLLUP
extension is highly
efficient, adding minimal overhead to a query.
CUBE
enables a SELECT
statement to calculate subtotals for all
possible combinations of a group of dimensions. It also calculates a grand
total. This is the set of information typically needed for all cross-tabular
reports, so CUBE
can
calculate a cross-tabular report with a single SELECT
statement. Like ROLLUP
, CUBE
is a simple extension
to the GROUP
BY
clause, and its syntax
is also easy to learn. The GROUPING SETS operator can generate the same result set as that generated by using a simple GROUP BY, ROLLUP, or CUBE operator. When all the groupings that are generated by using a full ROLLUP or CUBE operator are not required, you can use GROUPING SETS to specify only the groupings that you want. The GROUPING SETS list can contain duplicate groupings; and, when GROUPING SETS is used with ROLLUP and CUBE, it might generate duplicate groupings. Duplicate groupings are retained as they would be by using UNION ALL.
No comments:
Post a Comment