2011-11-10 86 views
0

我想知道它有具有类型“间谍”和人类的sattelites行星gallaxies。我有困难写NHibernate的 - HQL和深入内部联接

多个内部连接不同深度级别的。

这里是我的尝试之一:

select gal from Galaxy gal inner join gal.PlanetList planets 
inner join planets.SattelitesList satts, 
planets inner join planets.SpeciesList spec 
where spec.Name = 'Human' AND satts.Type = 'Spy' 

我知道这工作,但它只有一个深度的分支(如二叉树的一个分支):

select gal from Galaxy gal inner join gal.PlanetList planets 
inner join planets.SattelitesList satts where satts.Type ='Spy' 

谢谢

回答

3

不行吗?

from 
    gal from Galaxy gal 
    join gal.PlanetList planets 
    join planets.SattelitesList satts 
    join planets.SpeciesList spec 
where spec.Name = 'Human' AND satts.Type = 'Spy' 
+0

它做了,谢谢。一旦最短时间过去,将接受。 –