GARANTIR DESCONTO

Fórum Montar uma query com as seguintes condicoes #28754

20/03/2007

0

Tenho o seguinte problema citado abaixo.
Na query tenho a condicao de estar entre o periodo de 01-06 ate 12-06 (mm-yy), porem alguns meses nao contem valores nos campos.
estou usando um software para gerar os graficos e nesse programa nao mostra os meses que nao tiveram movimentacao.
Foi sugerido estar criando uma tabela auxiliar com as datas dos meses que nao tiveram movimentacao. blz..
Mas nao estou conseguindo montar tudo na mesma query.
Existe uma maneira?



SELECT SUM(A.ATR1) AS ´CHEQUE IRB´
, TO_CHAR(A.DATA,´MM-YY´) AS ´DATA´
, B.DESCRICAO
FROM NIVEL5CAI A, TAB_NIVEL5CAI B
WHERE A.NIVEL5 = B.NIVEL5
AND B.DESCRICAO = ´CHEQUE IRB´
AND TO_DATE(TO_CHAR(A.DATA, ´MM-YY´), ´MM-YY´)
BETWEEN TO_DATE(´01-06´,´MM-YY´) AND TO_DATE(´12-06´,´MM-YY´)
GROUP BY TO_CHAR(A.DATA,´MM-YY´) , B.DESCRICAO

---------------


SELECT TO_DATE(TO_CHAR(TO_DATE(A.DATA,´DD-MM-YY´),´MM-YY´), ´MM-YY´) AS ´DATA´
FROM NIVEL5CAI A, TB_DATA_TESTE C
WHERE A.DATA=C.DATA(+)
AND TO_DATE(TO_CHAR(TO_DATE(A.DATA,´DD-MM-YY´),´MM-YY´), ´MM-YY´)
BETWEEN TO_DATE(´01-06´,´MM-YY´) AND TO_DATE(´12-06´,´MM-YY´)
GROUP BY TO_DATE(TO_CHAR(TO_DATE(A.DATA,´DD-MM-YY´),´MM-YY´), ´MM-YY´)
ORDER BY 1

Agradeço


Stgmta

Stgmta

Responder

Posts

20/03/2007

Motta

Aqui vai um exemplo de como isto pode ser feito.

Neste exemplo se informa qts objetos do usuário foram criados por data

select created,sum(qtd) qtd
from
(select  created,count(*) qtd
 from user_objects
 where to_char(created,´yyyy´) = ´2006´ 
 group by created
 union all
 -- tabela ´fajuta´ para simular todos os dias do ano
 select (to_date(´31-dec-2005´) + rownum) created,0 qtd
 from   user_objects
 where rownum < 366)
group by created



Responder

Gostei + 0

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

Aceitar