Usuário com melhor resposta
Filtrar por período de datas

Pergunta
-
Boa tarde!
Preciso de um auxílio em relação a uma pesquisa que contém como um dos filtros o período de data.
A pesquisa tem vários filtros, e posso passar nulo pra todos eles. Mas com o filtro de "Data Inicial" e Data Final", isso não está funcionando.Segue minha query:
SELECT...
(Aqui começa o meu where com várias condições, e nessas abaixo, posso ou passar o parametro, ou nulo)
AND ( ( @PARAMETRO1 IS NULL )
OR ( @PARAMETRO1 IS NOT NULL
AND A.CAMPO1 = @PARAMETRO1 ) )
AND ( ( @PARAMETRO2 IS NULL )
OR ( @PARAMETRO2 IS NOT NULL
AND A.CAMPO2 = @PARAMETRO2) )porém, para o meu intervalo de datas, não funciona desta forma:
AND ( ( A.DATA_INCLUSAO BETWEEN @DATA_INICIAL AND @DATA_FINAL )
OR ( A.DATA_INCLUSAO A IS NOT NULL
AND A.DATA_INCLUSAO BETWEEN @DATA_INICIAL AND @DATA_FINAL ) )
Obrigada desde já quem puder ajudar!
- Editado Aretha Lemos terça-feira, 27 de novembro de 2012 15:46
Respostas
-
Boa tarde,
Aretha, da forma como você postou não está sendo verificado se os parâmetros são nulos:
AND ( ( @DATA_INICIAL IS NULL OR @DATA_FINAL IS NULL ) OR ( A.DATA_INCLUSAO BETWEEN @DATA_INICIAL AND @DATA_FINAL ) )
Espero que ajude.
Assinatura: http://www.imoveisemexposicao.com.br
- Editado gapimex terça-feira, 27 de novembro de 2012 16:35 otimização do script
- Marcado como Resposta Aretha Lemos terça-feira, 27 de novembro de 2012 16:45
Todas as Respostas
-
Aretha,
A consulta está retornando um resultado não esperado ou está sendo gerando um erro? Se for um erro favor postá-lo.
Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.
-
Boa tarde,
Aretha, da forma como você postou não está sendo verificado se os parâmetros são nulos:
AND ( ( @DATA_INICIAL IS NULL OR @DATA_FINAL IS NULL ) OR ( A.DATA_INCLUSAO BETWEEN @DATA_INICIAL AND @DATA_FINAL ) )
Espero que ajude.
Assinatura: http://www.imoveisemexposicao.com.br
- Editado gapimex terça-feira, 27 de novembro de 2012 16:35 otimização do script
- Marcado como Resposta Aretha Lemos terça-feira, 27 de novembro de 2012 16:45
-