0

我有两个实体:Department 和 DepartmentInfo。每个部门都有一个或多个 DepartmentInfo 对象。在 DepartmentInfo 中,有一个 departmentName 属性。

我想获取所有具有特定部门名称的部门对象。所以我为 Department 实体创建了一个 NSFetchRequest,并使用了这个获取请求:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SUBQUERY(departmentName, $s, $s.departmentName LIKE[c] %@).@count > 0", @"Marketing"];

它有效,但是:LIKE[c] 无效!我必须与确切的部门名称相匹配。如果我这样做,我将得不到匹配:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SUBQUERY(departmentName, $s, $s.departmentName LIKE[c] %@).@count > 0", @"Mar"];

这里有什么问题?

4

2 回答 2

0

由于 Jason Coco 没有将此作为答案发布,因此我这样做了:

使用 @"Mar*" 你会匹配

于 2011-05-25T18:53:35.247 回答
0

这里的使用SUBQUERY是不必要的。您可以使用以下方法获得相同的结果:

ANY departmentInfo.departmentName LIKE[c] 'Mar*'

对一组Department对象执行该操作,它将起作用。

于 2011-05-25T19:49:34.383 回答