Bom dia,
Espero que alguem me possa ajudar!
Tenho a seguinte "Expressão" para fazer search pela db através da data: instr(upper("DATA"),upper(nvl(:P1_REPORT_SEARCH, "DATA"))) > 0
Mas aqui o search é feito através de um textfield (P1_REPORT_SEARCH) e eu quero fazer através de 2 text fields (P1_REPORT_SEARCH e P1_SEARCH) para poder procurar dados introduzidos entre 2 datas.
Alguem tem alguma ideia de como poderei fazer isso?
Cumprimentos
JGAlmeida
31-10-2006, 12:29
Boas.
Não percebi muito bem o que estás a tentar fazer. Tens os campos de datas guardados como varchar? :s
De qq maneira ficam uns exemplos, se não for isso depois explica melhor o que precisas.
Pesquisa por data:
select
*
from
[tabela]
where
[campo_de_data] = to_date(p1_report_search,'dd-mm-yyyy');
entre datas:
select
*
from
[tabela]
where
[campo_de_data] between to_date(p1_report_search,'dd-mm-yyyy') and to_date(p2_report_search,'dd-mm-yyyy');
ou então:
select
*
from
[tabela]
where
[campo_de_data] >= to_date(p1_report_search,'dd-mm-yyyy')
and
[campo_de_data] <= to_date(p2_report_search,'dd-mm-yyyy');
Eu estou a usar o Oracle 10g express edition.
E basicamente eu estou a tentar fazer uma procura entre 2 datas. Introduzo a data de "inicio" e a data de "fim" e é mostrado todas as datas entre essas 2.
O código eu ja tenho:
select*
from tabela
where
data between :P1_REPORT_SEARCH and :P1_SEARCH
A variavel data está com o formato 'date' a e não com 'varchar2'
Na linha de comando funciona às mil maravilhas. Agora quando chega à aplicação, não funciona.. lol Será que estou a introduzir o code no local errado?
Não funciona....dá erro ou devolve 0 registos ? São coisas diferentes.
Se dá erro, mostra aqui.
JGAlmeida
02-11-2006, 14:24
A pergunta se estavas a guardar o campo de data como texto foi devido ao select que mostraste.
Tenho a seguinte "Expressão" para fazer search pela db através da data: instr(upper("DATA"),upper(nvl(:P1_REPORT_SEARCH, "DATA"))) > 0
Isso para campos de data não faz grande sentido. Mas adiante, convém saber:
- Em que linguagem estás a programar?
- Mete aí o código que usas para aceder à bd, e não apenas o select.
- E como disse o NQ, especifica melhor o que está a correr mal.
Sem esses dados é complicado ajudar.
Cumps