Trazer dados mensais
Fiz esse select para me trazer esses dados diariamente, agora penso em trazer esses mesmos dados em valores mensais.
Pensei em concatenar os dados da coluna dt_movimento MES/ANO, colocando group by deles para me trazer os valores.
Só que a minha idéia é que só traga o mês atual, ou seja mesmo em concatenando os valores de JAN a DEZ, só me interessa os valores do mês atual.
A opção de dar where e colocar a data beetween entre começo e fim do mês, não me agrada, pois a cada ano eu teria que mudar esse select.
Alguém poderia me ajudar com uma idéia e me ajusando a construir essa parte no select?
Obs: banco de dados oracle, usando plsql
Select SUM(FORNEC) AS CANA_FORNEC ,
SUM(CARGAS_FORNEC) AS CARGAS_FORNEC ,
SUM(PROPRIA) AS CANA_PROPRIA ,
SUM(CARGAS_PROPRIA) AS CARGAS_PROPRIA ,
MAX(dt_movimento) AS DT_MOVIMENTO
from
(
select
CASE WHEN TPP.CD_TP_PROPR = 4 THEN SUM(APT.QT_LIQUIDO) END AS FORNEC ,
CASE WHEN TPP.CD_TP_PROPR = 4 THEN COUNT(*) END AS CARGAS_FORNEC ,
CASE WHEN TPP.CD_TP_PROPR <> 4 THEN SUM(APT.QT_LIQUIDO) END AS PROPRIA ,
CASE WHEN TPP.CD_TP_PROPR <> 4 THEN COUNT(*) END AS CARGAS_PROPRIA ,
APT.dt_movimento
from PIMSPRD.APT_CARGAS APT, PIMSPRD.UPNIVEL3 UP3, PIMSPRD.TIPOPROPRI TPP
where APT.DT_MOVIMENTO = TO_DATE(Sysdate,'DD/MM/YYYY')
And UP3.CD_SAFRA = APT.CD_SAFRA
and UP3.CD_UPNIVEL1 = APT.CD_UPNIVEL1
and UP3.CD_UPNIVEL2 = APT.CD_UPNIVEL2
and UP3.CD_UPNIVEL3 = APT.CD_UPNIVEL3
and TPP.CD_TP_PROPR = APT.CD_TP_PROPR
and ((APT.CD_UNID_IND = 1))
group by TPP.CD_TP_PROPR, TPP.DA_TP_PROPR,APT.dt_movimento
)Discussão (4)
Carregando comentários...