quarta-feira, 22 de outubro de 2008

Grouping Sets no SQL Server 2008

A nova versão do banco de dados SQL Server 2008 acrescentou uma nova funcionalidade na Transact-SQL que permite o controle dos totais que devem ser acrescentados no result sets da consulta SQL.
Antes com a cláusula Rollup todos os níveis existentes no group by acrescentavam um total no result set, por exemplo em um agrupamento de Empresa, Filial, Funcionario era gerado uma linha de total por Empresa,Filial,Funcionario, outro na quebra de Empresa,Filial e outro na quebra de Empresa.
Com esta nova cláusula é possível informar que somente devem ser gerados totais por Empresa, Filial, Funcionário e outro por quebra de Empresa, desprezando a quebra por filial.

Sintaxe:

Select Empresa, Filial, Funcionario, SUM(Valores)
From FichaFinanceira
Group By Grouping Sets ( (Empresa, Filial, Funcionario), (Empresa) )
Order By Empresa, Filial, Funcionario

Um comentário:

  1. Péssimo. Parece que esta explicando para a empregada domestica a quantidade de sabao em po em uma maquina. Pessimo, pessimo.


    Frank Maldonado.

    ResponderExcluir