[JPA]zapytanie na 3 złączonych tabelach

0

Witam

mam 3 tabele, nazwijmy A, B, C, które są w takiej relacji (pomijam nieistotne dane)

class A {
    @OneToOne
    B b;
}
class B {
    @OneToMany
    List<C> c;
}
class C {
    String cos;
    @ManyToOne
    B b;
}

Teraz jeśli chcę dostać wiersze B na podstawie danych w C to tworzę NamedQuery:

SELECT b FROM B b JOIN b.c AS cc WHERE cc.cos = ?1

Pytanie co muszę zrobić jeśli chcę dostać wiersze A na postawie tych danych? Próbowałem JOIN A z B, a potem B z C, ale wyskoczył błąd składni (unexpected JOIN)

SELECT a FROM A a JOIN a.b AS bb JOIN bb.c AS cc WHERE cc.cos = ?1
0
twono napisał(a)

Pytanie co muszę zrobić jeśli chcę dostać wiersze A na postawie tych danych? Próbowałem JOIN A z B, a potem B z C, ale wyskoczył błąd składni (unexpected JOIN)

SELECT a FROM A a JOIN a.b AS bb JOIN bb.c AS cc WHERE cc.cos = ?1

JPA powinien lyknac takiego NamedQuery. Do jakiego DBMS sie laczysz?

0

PostgreSQL, Toplink, Glassfish 2.

EDIT: już nieaktualne. Przy dzieleniu query na wiele stringów zapomniałem dodać spacje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0