eu recebo como para metro um hql pronto do banco de dados ai eu so aplico ele na query e executo tenho tbm uma tabela de query e tbm um atabela de parametros da query tudo em HQL. estou precisando fazer consultas com datas em hql tipo
Movimentos do dia = select mov from Mov mov where dataCriacao = ? <<<< como pega data atual no hql?
do dia, da semana, do mes atual, levando em consideração apenas a data e não a hora
outra coisa…
meus campos são todos timestamp portanto se eu compara datas tipo dataAtual = new Date() não vai dar certo pois leva em consideração os segundos heheh.
precisaria tbm de formatar a data no hql pra depois compar . alguem ai tem uma dica
Para achar alguma coisa que ocorreu no dia 10 de agosto de 2009, não importa o horário, você deve procurar tudo que está BETWEEN a data de 10 de agosto de 2009, 00:00:00 AND a data de 10 de agosto de 2009, 23:59:59. Como você põe isso como parâmetro fica como exercício.
A
arthurminarini
ok, vlw, se alguem tiver outra ideia
A
arthurminarini
eu achei algumas funções tipo
current_date(), current_time(), and current_timestamp()
mas agora preciso formatar elas pois tras com tempos tbm.
tipo possivel exemplo:
select mov from TMov mov where format(dataCriacao,‘dd/mm/yyyy’) = format(current_date(),‘dd/mm/yyyy’)
o que eu posso colocar no lugar do format?
A
arthurminarini
resolvi utilizando talves uma pog se alguem tiver algo mais limpo
select mov from Mov mov where day(dataCriacao)=day(current_date()) and month(dataCriacao)=month(current_date()) and year(dataCriacao)=year(current_date())
dia ok
mes ok
como posso fazer para pegar os movimentos da semana? ou ultmos 7 dias
tipo select mov from Mov mov where dataCriacao <= current_date() - 7?
A
arthurminarini
resolvi a ultima questão
select mov from TMov mov where dataCriacao <= current_date() and dataCriacao >= current_date()-7
obrigado pela ajuda!
L
ldbononi
ow… tipo to sabendo que o post já tá resolvido mas achei uma solução legal aki que talvez possa ajudar alguém por aí…
select mov from TMov mov where CONVERT(CHAR(10), dataCriacao,103) = CONVERT(CHAR(10), DataAtual,103)