Я хочу знать галактики, в которых есть планеты с спутниками типа «Шпион» и человеческими видами.
Мне трудно написать несколько внутренних соединений разного уровня глубины.
Вот одна из моих попыток:
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'
Спасибо