java - 使用集合查询 @Entity 中的 @ElementCollection

标签 java jpa jpql

假设我有一个 @Entity (JPA 2.0)

@Entity    
class Entry {
        @ElementCollection
        Set<String> users = new HashSet();
        @ElementCollection
        Set<String> groups = new HashSet();
}

如何查询它以查找用户为“John”且组为“Foo”、“Bar”和“FooBar”的所有条目?

最佳答案

尝试使用这样的东西

@Query("SELECT DISTINCT e FROM Entry e WHERE :user MEMBER OF e.users AND :groups in e.groups")

List<Entry> yourQuery(@Param("user") String user, @Param("groups") List<String> groups);

关于java - 使用集合查询 @Entity 中的 @ElementCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34121907/

相关文章:

java 日志记录噩梦和 log4j 在 spring + tomcat6 中的行为不符合预期

java - JPA ManyToMany 产生的空连接表

java - 如何在jpql中选择列表元素的属性

java - JPA 连接运算符

java - 安卓viewpager : weird bug when adding/removing page

c# - C#中的序列化和Java中的反序列化

java - 您在 Java 中遇到的最常见的并发问题是什么?

java - JPA AttributeConverter 使 hibernate 在事务中对整个表生成更新语句

java - 在 JPA-SQL(或 HQL)查询中兼容的 Hibernate Composite UserType

jakarta-ee - 通过集合集相等性选择实体