Somando valores em SQL

outubro 17, 2007

Muitas vezes é necessário obter a somatória dos valores para uma amostragem posterior. A instrução a seguir demonstrará como retornar a somatória parcial de compras agrupadas por fornecedor e por último irá mostrar a somatória total destes valores.

SELECT

ID,

SUM(ValorTotal) ‘Valor Total do Fornecedor’,

GROUPING(ID) ‘GRP’

FROM

Compra

GROUP BY

ID

WITH ROLLUP

Como podem ver é uma instrução comum de agrupamento exceto pela instrução GROUPING. Esta instrução indica 0 quando o agrupamento não corresponde ao total somado e 1 quando é o total de todos os valores do campo somados, possibilitando assim saber qual é o valor parcial e total em apenas uma consulta. Já a instrução ROLLUP permite agregar valores conforme as condições estabelecidas.