Wallace,
Valeu a ajuda. Funcionou certinho.
Para ajudar outros usuários vou postar como ficou minha HQL.
Na minha questão usei entidades Pessoa e Filho como exemplo apenas, no meu caso real são Sessao e Simulacao as entidades análogas ao meu exemplo.
Lembrando também que a minha plataforma de desenvolvimento é .NET e o NHibernate tem quase todas as mesmas funcionalidades do Hibernate do Java.
Pois bem, seguindo o exemplo do Wallace minha queri HQL ficou da seguinte forma:
IQuery query = _session.CreateQuery("select se, count(si) from Sessao se " +
"join se.Simulacoes si " +
"group by se.Id, " +
"se.IP, " +
"se.EfetivouPagamento, " +
"se.CartaoDeCredito, " +
"se.ValorPago, " +
"se.CriadoEm, " +
"se.UltimaAtualizacaoEm " +
"having count(si) > 0");
O NHibernate gerou a seguinte query SQL:
select sessao0_.idSession as idSession0_,
sessao0_.Ip as Ip0_,
sessao0_.Paid as Paid0_,
sessao0_.CreditCard as CreditCard0_,
sessao0_.Value as Value0_,
sessao0_.CreatedAt as CreatedAt0_,
sessao0_.LastUpdatedAt as LastUpda7_0_,
sessao0_.idSession as x0_0_,
count_big(simulacoes1_.idSimulation) as x1_0_
from Sessions sessao0_
inner join Simulations simulacoes1_ on sessao0_.idSession=simulacoes1_.idSession
group by sessao0_.idSession ,
sessao0_.Ip ,
sessao0_.Paid ,
sessao0_.CreditCard ,
sessao0_.Value ,
sessao0_.CreatedAt ,
sessao0_.LastUpdatedAt
having (count_big(simulacoes1_.idSimulation)>0 )
Isso me retorna todas as minhas entidades Sessao que tem pelo menos UMA OU MAIS entidades Simulações
Wallace, valeu!!!
[]´s