Você poderá colocar essa consulta dentro de outra subconsulta e assim fsder
o SUM

Em 5 de fev de 2018 1:14 PM, "[email protected] [oracle_br]" <
[email protected]> escreveu:

>
>
> Boa tarde pessoal do forum.
>
> Em um relatório, tenho um select com union mais ou menos assim.....
>
> SELECT   TRIM(A.C_PROD)
> "Codigo Produto",
>          SUM(A.QTDE * 100)
> "Qtde Faturada",
>          SUM(A.VLR_TOTAL)
> "Valor s/ IPI e ST",
>          SUM(A.VLR_TOTAL         +
>              A.VLR_IPI           +
>              A.VLR_ICM_SUBST)
> "Valor c/ IPI e ST"
> FROM     NFDE A
> WHERE    A.DT_MOVTO   BETWEEN TO_DATE(:DMO1,'DD/MM/YYYY') AND
>                               TO_DATE(:DMO2,'DD/MM/YYYY') AND
>          A.TIPO_MOVTO IN             ( 310,315,316,
>                                        317,320,325,
>                                        326,860)
> GROUP BY A.TIPO_MOVTO,
>          TRIM(A.C_PROD)
>
> UNION ALL
>
> SELECT  'TRIM(A.RP2_PRO)
> "Codigo Produto",
>          SUM(A.RP2_QTD)
> "Qtde Faturada",
>          SUM(A.RP2_VLT)
> "Valor s/ IPI e ST",
>          SUM(A.RP2_VLT)
> "Valor c/ IPI e ST"
> FROM     CLP3_TAB_VEN_RP2@CLIPPER A LEFT JOIN CLP3_TAB_VEN_RP1@CLIPPER B
> ON (A.RP2_NRP = B.RP1_NRP)
> WHERE         B.RP1_DEM  BETWEEN TO_DATE(:DEM1,'DD/MM/YYYY') AND
>                                  TO_DATE(:DEM2,'DD/MM/YYYY') AND
>          TRIM(B.RP1_STA) =               'FATURADO'
> GROUP BY TRIM(A.RP2_PRO)
> ORDER BY 1,2
>
> Como podem reparar, as fontes de dados do select 1 e do select 2 sao
> diferentes (nada mais natural). O retorno desse select sao 2 linhas para
> mesmo produto, uma da fonte de dados "1" e outra da fonte de dados "2".
> Gostaria de saber se tem como eu somar essas duas linhas? Caso não seja
> possível, minha solução seria criar uma tabela temporária e através de uma
> procedure inserir os dados e depois fazer a consulta pro relatório. Será
> que existe uma solução mais fácil que esta?
>
> Obrigado a todos pela atenção.
>
> []s
>
> Emerson
>
>
>
> 
>

Responder a