Fórum Criando somas e agrupando por data #213708
12/02/2004
0
estou usando isso:
Select ENTREGA, MATERIAL_FK, SUM(QUANTIDADE) AS SOMAQT from lista
GROUP BY ENTREGA, MATERIAL_FK
ORDER BY ENTREGA, MATERIAL_FK
Onde ENTREGA = Date (neste formato dd/mm/aaaa hh:mm)
Só que ele considera 01/01/01 01:00 <> 01/01/01 01:01
Quero que ele pegue apenas pela data e desconsidere a hora
Desta maneira ele somará os valores corretamente.
Obrigado
Select ENTREGA, MATERIAL_FK, SUM(QUANTIDADE) AS SOMAQT from lista
GROUP BY ENTREGA, MATERIAL_FK
ORDER BY ENTREGA, MATERIAL_FK
Onde ENTREGA = Date (neste formato dd/mm/aaaa hh:mm)
Só que ele considera 01/01/01 01:00 <> 01/01/01 01:01
Quero que ele pegue apenas pela data e desconsidere a hora
Desta maneira ele somará os valores corretamente.
Obrigado
Jonnymarques
Curtir tópico
+ 0
Responder
Posts
13/02/2004
Aavanco
Olá JonnyMarques,
Depende do banco de dados que você esté utilizando.
Não achei funcoes no Interbase/Firebird para tratar isso então é possivel usar o artificio de criar uma visão (view) e então fazer a consulta:
[i:8a243ffb51]create view [b:8a243ffb51]DataEntrega [/b:8a243ffb51](Entrega, Material_Fk, Quantidade) as
select
count(cast(Entrega as date)),
Material_FK,
Quantidade
from lista
select
Entrega,
Material_Fk,
Sum(Quantidade) as SomaQT
from [b:8a243ffb51]DataEntrega[/b:8a243ffb51]
group by Entrega,Material_Fk[/i:8a243ffb51]
O Oracle disponibiliza algumas funções que facilitam este tipo de consulta. Então você faria:
[i:8a243ffb51]Select
[b:8a243ffb51]to_date[/b:8a243ffb51](ENTREGA,´dd/mm/yy´),
MATERIAL_FK,
sum(QUANTIDADE) as SOMAQT
from lista
group by [b:8a243ffb51]to_date[/b:8a243ffb51](ENTREGA,´dd/mm/yy´), MATERIAL_FK
order by [b:8a243ffb51]to_date[/b:8a243ffb51](ENTREGA,´dd/mm/yy´), MATERIAL_FK[/i:8a243ffb51]
Espero ajudar.
Depende do banco de dados que você esté utilizando.
Não achei funcoes no Interbase/Firebird para tratar isso então é possivel usar o artificio de criar uma visão (view) e então fazer a consulta:
[i:8a243ffb51]create view [b:8a243ffb51]DataEntrega [/b:8a243ffb51](Entrega, Material_Fk, Quantidade) as
select
count(cast(Entrega as date)),
Material_FK,
Quantidade
from lista
select
Entrega,
Material_Fk,
Sum(Quantidade) as SomaQT
from [b:8a243ffb51]DataEntrega[/b:8a243ffb51]
group by Entrega,Material_Fk[/i:8a243ffb51]
O Oracle disponibiliza algumas funções que facilitam este tipo de consulta. Então você faria:
[i:8a243ffb51]Select
[b:8a243ffb51]to_date[/b:8a243ffb51](ENTREGA,´dd/mm/yy´),
MATERIAL_FK,
sum(QUANTIDADE) as SOMAQT
from lista
group by [b:8a243ffb51]to_date[/b:8a243ffb51](ENTREGA,´dd/mm/yy´), MATERIAL_FK
order by [b:8a243ffb51]to_date[/b:8a243ffb51](ENTREGA,´dd/mm/yy´), MATERIAL_FK[/i:8a243ffb51]
Espero ajudar.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)