СУММ значения в SQL? - PullRequest
       17

СУММ значения в SQL?

0 голосов
/ 06 апреля 2020

У меня есть этот запрос.

SELECT  NFI.ID_Produto, SUM(NFI.Quantidade) AS Quantidade, MIN(PS.Descricao) AS Nome, MIN(NFI.ValorUnitario) AS Valor,
    SUM(NFI.ValorTotal) AS ValorTotal
FROM NotaFiscal_Item NFI
INNER JOIN Produto_Servico PS ON NFI.ID_Produto = PS.ID
INNER JOIN NotaFiscal NF ON NFI.ID_NF = NF.ID
INNER JOIN Venda V ON NF.ID_Venda = V.ID
INNER JOIN Usuario U ON V.ID_UsuarioComissao1 = U.ID
WHERE U.Descricao = 'MANHA' AND (NF.DataEmissao >= '2019-04-05 12:00:00' AND NF.DataSaida <= '2019-04-05 23:59:59')
GROUP BY NFI.ID_Produto
ORDER BY ValorTotal DESC

И это результат.

enter image description here

Как мне суммировать значения столбца ValorTotal показать на результат?

Ответы [ 2 ]

1 голос
/ 06 апреля 2020

Предположительно, вам нужна сумма окна:

SELECT  
    NFI.ID_Produto, 
    SUM(NFI.Quantidade) AS Quantidade, 
    MIN(PS.Descricao) AS Nome, 
    MIN(NFI.ValorUnitario) AS Valor,
    SUM(NFI.ValorTotal) AS ValorTotal,
    SUM(SUM(NFI.ValorTotal)) OVER() AS ValorOverall
FROM ...
GROUP BY NFI.ID_Produto
ORDER BY ValorTotal DESC

Это добавляет еще один столбец к результирующему результату с общим итогом ValorTotal (ie сумма ValorTotal по всем строкам в наборе результатов).

0 голосов
/ 07 апреля 2020
 SELECT SUM(T1.ValorTotal) AS SumOfValorTotal
 FROM
 (
    SELECT  NFI.ID_Produto, SUM(NFI.Quantidade) AS Quantidade, 
    MIN(PS.Descricao) AS 
    Nome, MIN(NFI.ValorUnitario) AS Valor,
    SUM(NFI.ValorTotal) AS ValorTotal
    FROM NotaFiscal_Item NFI
    INNER JOIN Produto_Servico PS ON NFI.ID_Produto = PS.ID
    INNER JOIN NotaFiscal NF ON NFI.ID_NF = NF.ID
    INNER JOIN Venda V ON NF.ID_Venda = V.ID
    INNER JOIN Usuario U ON V.ID_UsuarioComissao1 = U.ID
    WHERE U.Descricao = 'MANHA' AND (NF.DataEmissao >= '2019-04-05 12:00:00' AND 
    NF.DataSaida <= '2019-04-05 23:59:59')
    GROUP BY NFI.ID_Produto
  )  AS T1
...