Erro ao pegar o último registro de uma tabela

Olá, bom dia. Tenho este código que funciona legal:

public Evento ultimo(){ String hql = "from Evento qhere id = 100"; Query query = getSession().createQuery(hql); return (Evento) query.uniqueResult(); }

Porém, ao tentar pegar o último registro (que é o que me interessa), dá erro:

public Evento ultimo(){ String hql = "from Evento qhere id = max(id)"; Query query = getSession().createQuery(hql); return (Evento) query.uniqueResult(); }

Erro:

could not execute query

Alguém pode me ajudar?

Grato, Carlos.

Não seria ‘where’ invés de ‘qhere’ ?

Desculpe, foi um erro de digitação…

A sintaxe está correta, não está? Seria um erro com relação ao retorno de max(id) ser incompatível com uniqueResult()? Se sim, o que eu deveria usar então no lugar do uniqueResult?