SELECT * FROM suppliers WHERE supplier_name in ('IBM','Hewlett Packard','Microsoft');
我无法弄清楚我是如何使用原生的IN()函数来达到这个目的的.
我现在创建nspredicate的方式似乎是多余的,如下所示.
NSMutableArray *predicateArray = [NSMutableArray array];[skus enumerateObjectsUsingBlock:^(Nsstring *sku,NSUInteger IDx,BOol *stop) { [predicateArray addobject: [Nsstring stringWithFormat:@"(AudioSKU == \"%@\")",sku]];}];Nsstring *predicateString = [predicateArray componentsJoinedByString:@" OR "];nspredicate *predicate = [nspredicate predicateWithFormat:predicateString];
是否有正确的方法使用nspredciate或NSExpression来使用sql的IN函数?请赐教.
解决方法 nspredicate中也有类似的功能NSArray *skus = @[];nspredicate *predicate = [nspredicate predicateWithFormat:@"AudioSKU IN %@",skus];
而且你也不能像通常的字符串一样处理谓词字符串.您不能形成字符串数组并使用它们进行过滤.如果有多个连接,请使用NSCompoundPredicate.
一个很好的参考Using NSPredicate to filter Data
@H_502_39@ 总结以上是内存溢出为你收集整理的ios – 基于SQL IN()函数为Core Data创建NSPredicate全部内容,希望文章能够帮你解决ios – 基于SQL IN()函数为Core Data创建NSPredicate所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)