group by, i.cod_grupo_estatistico

19/08/2019

0

estou rodando esta querie, quero que me traga a soma dos valores de quant informada, valor informado , valor glosado e valor aprovado , quando tiver o mesmo item na coluna cod_grupo_estatistico, mas como pode ver no resultado o item MTC , aparece 3 vezes, não somou para aparecer apenas uma vez , alguém consegue me ajudar?

select i.cod_grupo_estatistico, c.num_guia,
sum(i.qtd_realizada) qtd_informada,
sum(i.val_informado) valor_informado,
(nvl(i.val_glosa, 0) + nvl(i.val_glosa_man, 0) + nvl(i.val_glosa_man_calc, 0)) as valor_glosado,
sum(i.val_aprovado)
FROM ctm_itens_contas i, ts.prestador_servico p, ts.ctm_contas_pag c
WHERE i.mes_ano_ref between to_date (''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''01/08/2019'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''dd/mm/yyyy'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''')
and to_date (''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''31/08/2019'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''dd/mm/yyyy'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''')
and p.cod_prestador = 4006203
and c.num_guia = ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''00000000000000821830''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
and c.num_guia = i.num_guia
GROUP BY i.cod_grupo_estatistico,
c.num_guia,
i.qtd_realizada,
i.val_informado,
i.val_glosa,
i.val_glosa_man,
i.val_glosa_man_calc,
i.val_aprovado

COD_GRUPO_ESTATISTICO NUM_GUIA QTD_INFORMADA VALOR_INFORMADO VALOR_GLOSADO SUM(I.VAL_APROVADO)
ECG 00000000000000821830 1 17,1 0 17,1
MTC 00000000000000821830 32 28,48 0 28,48
MCM 00000000000000821830 6 4,8 0 4,8
MAT 00000000000000821830 12 19,92 0 19,92
MTC 00000000000000821830 18 43,02 0 43,02
MTC 00000000000000821830 18 57,96 0 57,96
Amauri Porfirio

Amauri Porfirio

Responder

Post mais votado

20/08/2019

o group by deve conter apenas os campos que você precisa distinguir, aqueles que terão conteúdo único.
select
	i.cod_grupo_estatistico,
	c.num_guia,
	sum(i.qtd_realizada) qtd_informada,
	sum(i.val_informado) valor_informado,
	sum(nvl(i.val_glosa, 0) + nvl(i.val_glosa_man, 0) + nvl(i.val_glosa_man_calc, 0)) as valor_glosado,
	sum(i.val_aprovado) valor_aprovado
FROM
	ctm_itens_contas i,
	ts.prestador_servico p,
	ts.ctm_contas_pag c
WHERE
	i.mes_ano_ref between to_date ('01/08/2019','dd/mm/yyyy') and to_date ('31/08/2019','dd/mm/yyyy')
	and p.cod_prestador = 4006203
	and c.num_guia = '00000000000000821830'
	and c.num_guia = i.num_guia
GROUP BY
	i.cod_grupo_estatistico, 
	c.num_guia

Emerson Nascimento

Emerson Nascimento
Responder

Mais Posts

20/08/2019

Amauri Porfirio

o group by deve conter apenas os campos que você precisa distinguir, aqueles que terão conteúdo único.
select
	i.cod_grupo_estatistico,
	c.num_guia,
	sum(i.qtd_realizada) qtd_informada,
	sum(i.val_informado) valor_informado,
	sum(nvl(i.val_glosa, 0) + nvl(i.val_glosa_man, 0) + nvl(i.val_glosa_man_calc, 0)) as valor_glosado,
	sum(i.val_aprovado) valor_aprovado
FROM
	ctm_itens_contas i,
	ts.prestador_servico p,
	ts.ctm_contas_pag c
WHERE
	i.mes_ano_ref between to_date ('01/08/2019','dd/mm/yyyy') and to_date ('31/08/2019','dd/mm/yyyy')
	and p.cod_prestador = 4006203
	and c.num_guia = '00000000000000821830'
	and c.num_guia = i.num_guia
GROUP BY
	i.cod_grupo_estatistico, 
	c.num_guia
Responder

20/08/2019

Amauri Porfirio

o group by deve conter apenas os campos que você precisa distinguir, aqueles que terão conteúdo único.
select
	i.cod_grupo_estatistico,
	c.num_guia,
	sum(i.qtd_realizada) qtd_informada,
	sum(i.val_informado) valor_informado,
	sum(nvl(i.val_glosa, 0) + nvl(i.val_glosa_man, 0) + nvl(i.val_glosa_man_calc, 0)) as valor_glosado,
	sum(i.val_aprovado) valor_aprovado
FROM
	ctm_itens_contas i,
	ts.prestador_servico p,
	ts.ctm_contas_pag c
WHERE
	i.mes_ano_ref between to_date ('01/08/2019','dd/mm/yyyy') and to_date ('31/08/2019','dd/mm/yyyy')
	and p.cod_prestador = 4006203
	and c.num_guia = '00000000000000821830'
	and c.num_guia = i.num_guia
GROUP BY
	i.cod_grupo_estatistico, 
	c.num_guia
Responder

20/08/2019

Amauri Porfirio

o group by deve conter apenas os campos que você precisa distinguir, aqueles que terão conteúdo único.
select
	i.cod_grupo_estatistico,
	c.num_guia,
	sum(i.qtd_realizada) qtd_informada,
	sum(i.val_informado) valor_informado,
	sum(nvl(i.val_glosa, 0) + nvl(i.val_glosa_man, 0) + nvl(i.val_glosa_man_calc, 0)) as valor_glosado,
	sum(i.val_aprovado) valor_aprovado
FROM
	ctm_itens_contas i,
	ts.prestador_servico p,
	ts.ctm_contas_pag c
WHERE
	i.mes_ano_ref between to_date ('01/08/2019','dd/mm/yyyy') and to_date ('31/08/2019','dd/mm/yyyy')
	and p.cod_prestador = 4006203
	and c.num_guia = '00000000000000821830'
	and c.num_guia = i.num_guia
GROUP BY
	i.cod_grupo_estatistico, 
	c.num_guia
Responder

20/08/2019

Amauri Porfirio

Emerson, muito bom, obrigado
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar