选择实体包含列表的位置,哪些元素不在另一个列表中

时间:2013-02-08 00:10:25

标签: jpa jpql

我的问题是基于另一个问题:Selecting where an entity contains a list thats a subset of another list

但我想做的是:

我正在编写JPQL查询,我有以下场景。我有一个Question实体,其中包含一个Tags列表。我想在列表中选择不包含任何给定标记的所有问题。我如何用JPA做到这一点?

我想做一些像SELECT x FROM问题x WHERE x.tags'不包含任何':tags

我尝试使用'NOT IN',但它不起作用。在这种情况下,它返回所有问题,至少在标签上不在“标签”列表中。我想仅返回所有不在“标签”列表中的标签的问题。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

尝试在列表中找到具有项目的员工的子选择,然后在主查询中使用不存在。像

这样的东西
SELECT x FROM Question x WHERE not exists( select tag from x.tags tag where tag in  :tags )