25
我以爲我知道如何使用JOIN
JPQL
但顯然不是。誰能幫我?JPA:加入JPQL
select b.fname, b.lname from Users b JOIN Groups c where c.groupName = :groupName
這讓我異常
org.eclipse.persistence.exceptions.JPQLException
Exception Description: Syntax error parsing the query
Internal Exception: org.eclipse.persistence.internal.libraries.antlr.runtime.EarlyExitException
Users
有Groups
一個一對多的關係。
Users.java
@Entity
public class Users implements Serializable{
@OneToMany(mappedBy="user", cascade=CascadeType.ALL)
List<Groups> groups = null;
}
Groups.java
@Entity
public class Groups implements Serializable {
@ManyToOne
@JoinColumn(name="USERID")
private Users user;
}
我的第二個問題是我們說的這個查詢返回唯一結果,那麼如果我做
String temp = (String) em.createNamedQuery("***")
.setParameter("groupName", groupName)
.getSingleResult();
***
表示上面的查詢名稱。 fname
和lname
連在一起temp
或我得到List<String>
回來?
如果不是選擇字段,你選擇什麼實體+另一個實體的字段。就像'SELECT b,c.name ...'。那麼Object []中的第一個對象將是b或整個實體的字段? – Ced 2015-09-21 18:25:05