可能重复:
如何在参数为集合的情况下编写 JPA 查询?
我有 2 个实体
@Entity
public class Container {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
Long id;
@ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
Set<Child> data = newHashSet();
}
@Entity
public class Child {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
Long id;
}
现在我想选择所有包含指定子容器的容器。select c from Container c where :child in c.data
我编写了产生 sql 的jpa 查询
select
container0_.id as id4_
from
Container container0_
cross join Container_Child data1_, Child child2_
where
container0_.id=data1_.Container_id
and data1_.data_id=child2_.id
and (? in (.))
limit ? [42001-168]
并失败JdbcSQLException
。我该如何解决?