我对这个问题感到困惑。我有一个解决方法,但是我不理解它,所以不能算数。我的目标是对于某个实体(在这种情况下是“照片”),我想找到任何人审查过但不是指定用户的所有照片。这里的关系是Photo->Review->User,其中一张照片可以有多个评论,并且每个评论都由一个用户拥有。前两个示例是我的逻辑第一次尝试,但不起作用。我找到了一些类似的代码显示子查询,它可以工作,但是有没有人能解释为什么前两个示例不起作用?
// this does not work
[NSPredicate predicateWithFormat:@"NOT (ANY reviews.user = %@)", self.user]
// this does not work
[NSPredicate predicateWithFormat:@"NONE reviews.user = %@", self.user]
// this works
[NSPredicate predicateWithFormat:@"SUBQUERY(reviews, $x, $x.user == %@).@count == 0", self.user];