NSPredicate 谓词

在查询数据的过程中,给NSFetchRequest设置一个过滤条件,不需要讲所有的托管对象加载到内存中去。这样的话就会节省内存和加快查找速度。

一 运算符

1 比较运算符

、< 、== 、>= 、<= 、!=

比如说age>80

NSPredicate *pre = [NSPredicate predicateWithFormat:@"age > 80"];

2.范围运算符:IN 、BETWEEN 表示一个范围

   // 过滤条件 BETWEEN 年龄在27 到 30 之间的范围 IN 是 包含,过滤包含27 或者 28的对象
//    NSPredicate *pre = [NSPredicate predicateWithFormat:@"age BETWEEN {27,30}"];NSPredicate *pre = [NSPredicate predicateWithFormat:@"age BETWEEN {27,28}"];

3 字符串本身:SELF

// 字符串本身 找到name等于某个字符串的操作
NSPredicate *pre = [NSPredicate predicateWithFormat:@"name == '编号322'"];

4 字符串相关的操作 BEGINSWITH(以某个字符串开头)、ENDSWITH(以某个字符串结束)、CONTAINS(包含某个字符串)

    // [c]不区分大小写// [d]不区分发音符号即没有重音符号// [cd]既不区分大小写,也不区分发音符号// CONTAINS 包含指定字符串的NSPredicate *pre = [NSPredicate predicateWithFormat:@"name CONTAINS[cd] '编号322'"];// BEGINSWITH 以指定字符串的开始的NSPredicate *pre = [NSPredicate predicateWithFormat:@"name BEGINSWITH[cd] '编号'"];// ENDSWITH 以指定字符串的结束的NSPredicate *pre = [NSPredicate predicateWithFormat:@"name ENDSWITH[cd] '2'"];

5 通配符 LIKE 常用于模糊查询

//    *注*: 星号 "*" : 代表0个或多个字符
//    问号 "?" : 代表一个字符// 找出编号开头的nameNSPredicate *pre = [NSPredicate predicateWithFormat:@"name  LIKE[cd] '编号*'"];

6 keyPath 创建查询条件的时候,支持设置被匹配的目标的keypath,设置更为深层次的匹配目标

[NSPredicate predicateWithFormat:@"employee.name = %@", @"lxz"]

03-NSPredicate谓词相关推荐

  1. NSPredicate 谓词

    比较运算符         /**比较运算符          * >:大于          * <:小于          * >=:大于等于          * <=: ...

  2. ios nsstring根据ascii码大小排序_iOS(NSPredicate) 谓词的使用

    参考 iOS-谓词的使用详解 NSPredicate 谓词 NSPredicate A definition of logical conditions used to constrain a sea ...

  3. HTTPPost/AFNetWorking/JSONModel/NSPredicate

    一.HTTPPost================================================ 1. POST方式发送请求 HTTP协议下默认数据发送请求方法是GET方式,若需要 ...

  4. 自己学习Foundation一些类

    一些类 NSDecimalNumber 数字精准计算 NSCache 线程安全的Memory缓存 NSCharacterSet 字符串分割.过滤等 NSEnergyFormatter 以焦耳和卡路里作 ...

  5. cd linux盒上盖子不休眠,CDLinux 自动休眠功能的关闭方法

    微信企业号 获取AccessToken 目录 1. AccessToken介绍 2. 示例代码 1. AccessToken介绍 1.1 什么是AccessToken AccessToken即访问凭证 ...

  6. IOS-Core Data的使用

    二.Core Data的使用(一) CoreData 1.  常用类和方法   ( 注意需要导入   coredata  框架   ) 表结构:NSEntityDescription 表记录:NSMa ...

  7. Core Data的使用(二)备

    一.基础概念深入 1.NSManagedObjectContext 被管理数据上下文就像便笺簿 当从数据持久层获取数据时,相当于把这些临时的数据拷贝写在便笺簿上,然后就可以随心所欲的修改这些值. 通过 ...

  8. iOS 搜索功能实现

    本文主要讲述了如何使用UISearchController实现搜索栏,现在把实现思路和代码整理出来分享给iOS程序员兄弟们,希望给他们的开发工作带来帮助. 查看源代码 打印帮助 1   UISearc ...

  9. iOS开发——UISearchController实现搜索栏功能|阳和移动开发

    原文链接http://www.mobile-open.com/2015/86290.html,有删节和改动. 原文主要讲述了如何使用UISearchController实现搜索栏,现在把实现思路和代码 ...

最新文章

  1. 条件独立(conditional independence) 结合贝叶斯网络(Bayesian network) 概率有向图 (PRML8.2总结)...
  2. python写一个表白程序_用Python写一个能算出自己年龄的小程序
  3. Training RNNs as Fast as CNNs
  4. java常用类总结_java——常用类的总结
  5. 大型网站技术架构(七)--网站的可扩展性架构(转)
  6. 编写一个头像裁剪组件(一)
  7. 变量和数据结构的赋初值
  8. Echarts数据可视化series-heatmap热力图,开发全解+完美注释
  9. 构建安全可控的网络环境,国产化网管势在必行
  10. 数值优化-梯度下降法
  11. 流媒体传输协议浅析(三)可靠UDP传输方案
  12. c语言筛选法求素数,筛选法求素数
  13. IDEA中解决Spring 配置文件未受管束问题,提示:Unmapped Spring configuration files found
  14. ps抠图插件Topaz ReMask 5
  15. 上海驾驶证满6年换证
  16. Win11搜索框恢复成放大镜
  17. 手持式水质监测仪在污水处理中的应用
  18. 计算机电缆线对成缆系数,电线电缆的成缆系数是什么含义?
  19. 打造一流软文营销推广平台,看看媒体批发网是如何做的
  20. python3.5.5does not support a f profix

热门文章

  1. @class和#import
  2. HDU 1711 Number Sequence(KMP算法)
  3. js 获取URL后面的参数
  4. OpenCV 【七】————边缘提取算子(图像边缘提取)——canny算法的原理及实现
  5. FastDFS安装与使用
  6. Gridview][UpdateCommand的写法要点]
  7. C语言Free时报错HEAP CORRUPTION DETECTED
  8. AWS攻略——使用S3托管静态网页
  9. matlab内存管理(二)
  10. 【GLib】GLib学习笔记(一):GLib、GObject、GType