Ajuda em Consulta HQL

Bom dia pessoal.
Tenho uma aplicacao que possui a seguinte relacao:

Pregao x Proposta = one-to-many x many-to-one
Proposta x Lance = one-to-many x many-to-one
Lance x Lote = many-to-one

Preciso criar uma consulta que me retorne todos os pregoes com suas respectivas propostas e as propostas com seus respectivos Lances e os lances com seus respetivos lotes, sendo que os valores de um respetivo lance de uma respectiva proposta deve ser distintos e retornado o menor valor do lance para essa proposta, ou seja, se eu tiver uma proposta que ja deu mais de um lance para um lote eu devo retornar somente a proposta com o seu menor lance . Vixiii…Andei dando uma olhada e o hibernate nao permite uma busca por mais de uma colecao, ou seja se eu tentar dessa forma:

from Pregao join fetch Pregao.proposta as proposta join fetch proposta.lance as lance join fetch lance.lote

Da problema.
Como eu poderia montar essa HQL, usando funcao min() para retornar o menor valor do lance, proposta e pregao?

Obrigado…

eu penso que pregao ou proposta possui uma chave estrangeira para a outra table não é? Então use uma sub-query para fazer isso, join existe no HQL? Tipo from Proposta in(pregao) não sei se vc me compreendeu, mas.

Caro fnandos, existe jon no HQL sim:
http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html

Mesmo assim valeu…

Alguem pode me ajudar com essa HQL??? Desculpe a insistencia, mas ja estou doidinho!

Boa tarde.

Normalmente fazemos assim:

select ci from CotacaoItem ci where ci.solicitacaoFornecedor.solicitacao.isnSolicitacao = :isnSolicitacao and ci.vlrItemInicial in (select min(ci3.vlrItemInicial) from CotacaoItem ci3)")

veja se esse te ajuda.

Atenciosamente BJava.