paribe
Abril 29, 2009, 8:16am
#1
Olá,
uma duvida porque não busca o registro no banco de dados (sql ansi) Mysql
conforme abaixo
o parametro data_inicial e data_final está como java.util.Date
--iReport
where ($P{data_inicial} is null and $P{data_final} is null )or
(ic.notafter between $P{data_inicial} and $P{data_final})
[/code]
–como está no banco de dados mysql o campo como DATETIME com conteudo
2011-11-25 21:59:59
[/code]
pozzo
Abril 29, 2009, 8:59am
#2
Será que não é por causa da hora? Tente descarta-la utilizando trunc.
paribe
Abril 29, 2009, 9:07am
#3
mas a idéia é usar esse relatório pra varios bancos
e o trunc do mysql é igual ao Oracle,Syabse,SqlServer…
A melhor solução seria essa ???
pozzo
Abril 29, 2009, 9:28am
#4
Você também pode concatenar data + 23:59:59.
paribe
Abril 29, 2009, 9:28am
#5
usei e funcionou:
where ($P{data_inicial} is null and $P{data_final} is null )or (DATE(ic.notafter) >=str_to_date($P{data_inicial},'%d/%m/%Y %T') and DATE(ic.notafter)<=str_to_date($P{data_final},'%d/%m/%Y %T'))
mas só funciona pra MYSQL …DATE() …
e para outros bancos ???
paribe
Abril 29, 2009, 9:29am
#6
fiz isso de concatenar mais não funcionou não trazia o registro…
abs