如何编写核心数据获取请求谓词以将NSnumber作为位图进行比较



我有一个核心数据实体属性,称为'type'。它在核心数据中的类型整数,因此在拉出时进行nsnumber,并且该值是一个位图,我希望对一组特定值进行过滤

我一直在尝试按照

的行为构成nspredicate
NSPredicate *typeOfFacilityPredicate = [NSPredicate predicateWithFormat:@"type AND %@ > %0",@6667, @0];

xcode如果给我***终止应用程序,因为未被发现的异常" nsinvalidargumentException",原因:'无法解析格式字符串"类型" type and%@>%@''

是否可以在核心数据获取谓词谓词中执行此逻辑?还是我必须制作一系列的OR,将类型与许多不同值进行比较?或者也许创建一个值数组,并按照任何类型的行为

的行为做某事

关于如何正确编写谓词的任何想法都将得到感激。

所以返回我的Mac后,我能够检查一下,确实是

NSPredicate *typeOfFacilityPredicate = [NSPredicate predicateWithFormat:@"bitwiseAnd:with:(type, %@) > %@",@6667, @0];

应该工作。但是,在检查了该的SQL之后,我看到一个简单得多的解决方案只是在您的谓词中替换为"&":

NSPredicate *typeOfFacilityPredicate = [NSPredicate predicateWithFormat:@"type & %@ > %@",@6667, @0];

最新更新