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.

7 Respostas to “Somando valores em SQL”


  1. a clausula GROUPING não funciona no IBEXPERT???

  2. João Paulo Says:

    Ficaria mais legal se colacar um ISNULL(ID, ‘TOTAL ===>’)
    Aparecendo na última linha da consulta utilizando o WITH ROLLUP

    SELECT

    ISNULL(ID, ‘TOTAL’) AS ID,

    SUM(ValorTotal) ‘Valor Total do Fornecedor’,

    GROUPING(ID) ‘GRP’

    FROM

    Compra

    GROUP BY

    ID

    WITH ROLLUP

  3. Triplo X Says:

    Poxa cara, a partir desse comando eu criei vários outros comandos, não fugindo da sintaxe SQL.

    Parabéns.
    Continue postando artigos legais.😉

  4. Douglas Reck Says:

    Interessante a solução e prática tb.
    Porém, seria mais interessante ainda se fosse especificado para quais sgbds essa solução funciona.

    Att,


  5. Thank you for another informative website. The place else
    may I get that type of information written in such a perfect method?
    I have a project that I am simply now working on, and
    I have been on the glance out for such info.


  6. Thankfulness to my father who informed me on the topic
    of this weblog, this blog is actually amazing.


  7. Does your site have a contact page? I’m having problems locating it but, I’d
    like to send you an e-mail. I’ve got some creative ideas for your blog you might be interested in hearing. Either way, great site and I look forward to seeing it develop over time.


Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: