Group By - Como faço para agrupar o campo SAIDA_QTDE
Como faço Group By com um campo que não venha de uma tabela, um campo de soma, nesse caso quero agrupar o saida_qtde, como faço?
select
s.data,
s.doc,
''SAIDA'' movimentacao,
(select first 1 g.nome from gegrupos g where g.cod = i.gru) grupo,
(select first 1 nome from tbcencus where cod=s.cdc) cdc,
ss.item cod,
i.nome matmed,
i.uni_con und,
sum(qtde) saida_qtde,
cast(i.vlrmed as numeric (10,2)) saida_custo,
sum(ss.qtde * i.vlrmed) saida_vlrmed,
0 devol_qtde,
0 devol_custo,
0 devol_vlrmed
from gecadsai s
left join gelansai ss on s.ano=ss.ano and s.mes=ss.mes and s.doc=ss.doc
left join geitens i on ss.item=i.cod
where ss.consol=''T''
and s.data between :data1 and :data2
group by
s.data,
s.doc,
i.gru,
s.cdc,
ss.item,
i.nome,
i.uni_con,
s.data,
i.vlrmed,
ss.qtde
select
s.data,
s.doc,
''SAIDA'' movimentacao,
(select first 1 g.nome from gegrupos g where g.cod = i.gru) grupo,
(select first 1 nome from tbcencus where cod=s.cdc) cdc,
ss.item cod,
i.nome matmed,
i.uni_con und,
sum(qtde) saida_qtde,
cast(i.vlrmed as numeric (10,2)) saida_custo,
sum(ss.qtde * i.vlrmed) saida_vlrmed,
0 devol_qtde,
0 devol_custo,
0 devol_vlrmed
from gecadsai s
left join gelansai ss on s.ano=ss.ano and s.mes=ss.mes and s.doc=ss.doc
left join geitens i on ss.item=i.cod
where ss.consol=''T''
and s.data between :data1 and :data2
group by
s.data,
s.doc,
i.gru,
s.cdc,
ss.item,
i.nome,
i.uni_con,
s.data,
i.vlrmed,
ss.qtde
Marcos Batista
Curtidas 0
Respostas
Anderson Gonçalves
09/11/2021
Como faço Group By com um campo que não venha de uma tabela, um campo de soma, nesse caso quero agrupar o saida_qtde, como faço?
select
s.data,
s.doc,
''SAIDA'' movimentacao,
(select first 1 g.nome from gegrupos g where g.cod = i.gru) grupo,
(select first 1 nome from tbcencus where cod=s.cdc) cdc,
ss.item cod,
i.nome matmed,
i.uni_con und,
sum(qtde) saida_qtde,
cast(i.vlrmed as numeric (10,2)) saida_custo,
sum(ss.qtde * i.vlrmed) saida_vlrmed,
0 devol_qtde,
0 devol_custo,
0 devol_vlrmed
from gecadsai s
left join gelansai ss on s.ano=ss.ano and s.mes=ss.mes and s.doc=ss.doc
left join geitens i on ss.item=i.cod
where ss.consol=''T''
and s.data between :data1 and :data2
group by
s.data,
s.doc,
i.gru,
s.cdc,
ss.item,
i.nome,
i.uni_con,
s.data,
i.vlrmed,
ss.qtde
select
s.data,
s.doc,
''SAIDA'' movimentacao,
(select first 1 g.nome from gegrupos g where g.cod = i.gru) grupo,
(select first 1 nome from tbcencus where cod=s.cdc) cdc,
ss.item cod,
i.nome matmed,
i.uni_con und,
sum(qtde) saida_qtde,
cast(i.vlrmed as numeric (10,2)) saida_custo,
sum(ss.qtde * i.vlrmed) saida_vlrmed,
0 devol_qtde,
0 devol_custo,
0 devol_vlrmed
from gecadsai s
left join gelansai ss on s.ano=ss.ano and s.mes=ss.mes and s.doc=ss.doc
left join geitens i on ss.item=i.cod
where ss.consol=''T''
and s.data between :data1 and :data2
group by
s.data,
s.doc,
i.gru,
s.cdc,
ss.item,
i.nome,
i.uni_con,
s.data,
i.vlrmed,
ss.qtde
Qual é o seu banco de dados parceiro?
GOSTEI 0