IOS / Objective-C:核心数据获取中的NSPredicate和NULL值

时间:2018-05-22 11:19:53

标签: ios core-data nspredicate

我正在尝试在NSNumber属性中获取值不为1的项目。我想要获取的一些项目从未设置过属性,因此具有NSNull值。如何获取非1但可能是NSNull的项?

该属性为NSNumber,我对是否应该在1@1进行搜索感到有点困惑。

以下代码在我想要包含它们时排除NSNull值:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"&hasserverid!=1"];

感谢您的任何建议。

1 个答案:

答案 0 :(得分:2)

您可以使用OR显式测试这两种情况:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"hasserverid != YES OR hasserverid == NULL"];

通过你的财产的名称,我假设你说1你实际上是指真值。在谓词格式中使用YES而不是1会使您的谓词更清晰。