2011-06-29 60 views
0

我有兩個實體的Java EE命名查詢加入

@Entity  
    public class Tabulka{ 

@OneToMany(mappedBy = "tabulka") 
    private List<VysledkyHraca> vysledkyHraca; 
. 
. 
. 

} 

@Entity 
    public class VysledkyHraca{ 

    @ManyToOne 
     private Tabulka tabulka; 
. 
. 
. 

    } 

此創建表:tabulka與ID和... 和VysledkyHraca與ID ..和id_tabulka

如果我想檢索所有tabulka ...好吧,這很容易:

@NamedQuery(name = Tabulka.Q_GET_ALL_TABULKY, query = "SELECT t FROM Tabulka t ") 

但現在我想以檢索所有tabulka然後VysledkyHraca

的名單我試試這個@NamedQuery(name = Tabulka.Q_GET_ALL_JOINTABULKY, query = "SELECT t FROM Tabulka t join t.vysledkyHraca")但它不工作。 THX的幫助

+0

您需要比「但它不工作」更多的信息。堆棧跟蹤,有關什麼不起作用的詳細信息等。 – javamonkey79

回答

2

連接需要一個別名

如果你只是希望它取出,用「連接抓取」(沒有別名)

+0

hm和聯接提取和聯接有什麼不同? – hudi

0

你還是在第二個查詢選擇Tabulkas。嘗試:

SELECT vh FROM Tabulka t join t.vysledkyHraca vh