Neste post vamos analisar como agregar
com ROLLUP funciona. A clausula ROLLUP nos permite executar múltiplos níveis de
agregação em um único comando.
Um exemplo seria uma tabela que armazena-se
dados sobre vendas relacionadas a um determinado período do ano.
CREATE
TABLE tbVendas (EmpId INT, Yr INT, tbVendas MONEY)
INSERT
tbVendas VALUES(1, 2005, 12000)
INSERT
tbVendas VALUES(1, 2006, 18000)
INSERT
tbVendas VALUES(1, 2007, 25000)
INSERT
tbVendas VALUES(2, 2005, 15000)
INSERT
tbVendas VALUES(2, 2006, 6000)
INSERT
tbVendas VALUES(3, 2006, 20000)
INSERT
tbVendas VALUES(3, 2007, 24000)
Pode ser escrito uma query que exibirá
os registros agrupados por ano.
SELECT Ano, SUM(Venda) AS Sales
FROM tbVendas
GROUP BY Ano
O resultado será o
retorno de três com os registros dos respectivos anos