Preciso fazer um consulta que me retorne a menor data dentro de uma tabela, em SQL seria dessa forma no banco Oracle
select * from ocorrencia
where lote_id = 151 and datainfracao = (select min(datainfracao) from ocorrencia
where lote_id = 151)
Ou dessa forma
select * from
(select * from ocorrencia
where lote_id = 151
order by datainfracao) o
where rownum < 2
não estou sabendo fazer isso usando criteria se alguem puder me ajudar, serei eternamente grato pois o sistema está em produção e preciso mudar isso para o cliente.