某個(gè)實(shí)體:
@Entity
@Table(name="document")
public class Document {
...
@ManyToMany
public Set<User> accessors;
....
}
查詢所有的包含某個(gè)特定user的Documents的方法
1、 用join
select distinct d from Document d inner join d.accessors a where a.id = :id
2、MEMBER OF
關(guān)鍵字
SELECT d FROM Document AS d WHERE :user MEMBER OF d.accessors
這種方法比第一種簡(jiǎn)單些,但是只能傳入user實(shí)體,而不是user id.
from:JPA JPQL: select items when attribute of item (list/set) contains another item