Data com formato YYYYMM

Oracle

06/05/2012

Tenho em minha query essa linha
DAT_YM BETWEEN TO_CHAR( add_months(SYSDATE, -12),YYYYMM) AND TO_CHAR( add_months(SYSDATE, -1 ),YYYYMM)

O campo DAT_YM é do tipo NCHAR(8,0). Eu passo o parâmetro assim:201204, por exemplo. Como eu substituo na linha acima? No lugar de SYSDATE deveria ser a data com esse formato: YYYYMM. Como eu faço?
Pjava

Pjava

Curtidas 0

Respostas

Jair N.

Jair N.

06/05/2012

Você quer passar via parâmetro no lugar da data atual do sistema SYSDATE?
TO_CHAR( add_months(:datInformada, -12),YYYYMM) AND TO_CHAR( add_months(:datInformada, -1 ),YYYYMM)
Veja se, em seu sistema projeto é possível passar diretamente como parâmetro a data formatada, dependendo da situação é melhor dividir este campo em ano e mes ao invés de tudo junto? Existem vários meios de se fazer tal procedimento em sua consulta ficando mais diversificada possível.
Tudo é questão da praticidade, não se deve complicar muito a questão de banco de dados, para que posteriormente possa otimizar suas consultas armazenadas.





ora :Data_INI ND
Tenho em minha query essa linha
DAT_YM BETWEEN TO_CHAR( add_months(SYSDATE, -12),YYYYMM) AND TO_CHAR( add_months(SYSDATE, -1 ),YYYYMM)

O campo DAT_YM é do tipo NCHAR(8,0). Eu passo o parâmetro assim:201204, por exemplo. Como eu substituo na linha acima? No lugar de SYSDATE deveria ser a data com esse formato: YYYYMM. Como eu faço?
GOSTEI 0
POSTAR