查询集表示从数据库中获取的对象集合,在管理器上调用某些过滤器方法会返回查询集,查询集可以含有零个、一个或多个过滤器。过滤器基于所给的参数限制查询的结果,从Sql的角度,查询集和select语句等价,过滤器像where和limit子句。

模型管理器的方法返回查询集的方法如下

  • all():返回所有数据。
  • filter():返回满足条件的数据。
  • exclude():返回满足条件之外的数据,相当于sql语句中where部分的not关键字。
  • order_by():对结果进行排序。

返回单个值的过滤器如下:

  • get():返回单个满足条件的对象

    • 如果未找到会引发"模型类.DoesNotExist"异常。
    • 如果多条被返回,会引发"模型类.MultipleObjectsReturned"异常。
  • count():返回当前查询结果的总条数。
  • aggregate():聚合,返回一个字典。

exists() :判断一个查询集中是否有数据,如果没有则返回false,有就返回true

惰性查询:创建查询集不会访问数据库,直到调用数据时,才会访问数据库,调用数据的情况包括迭代、序列化、与if合用

缓存:使用同一个查询集,第一次使用时会发生数据库的查询,然后把结果缓存下来,再次使用这个查询集时会使用缓存的数据。

限制查询集,就是对查询集进行切片的操作

list=BookInfo.objects.all()[0:2]

最新文章

  1. Strint类成员
  2. MVC4 本地正常运行,发布到IIS7->403 - 禁止访问: 访问被拒绝。
  3. Loadrunner中参数化实战(8)-Unique+Each occurrence
  4. Empire C:Basic 2
  5. 利用IronJs在.NET程序里面跑javascript脚本
  6. ASP.NET MVC中将数据从Controller传递到视图
  7. Java script基础
  8. web前端的十种jquery特效及源码下载
  9. URL与URI的区别
  10. Javascript模块化编程之难处
  11. 网站相关人员信息记录humans.txt
  12. android 资源
  13. uc/os iii移植到STM32F4---IAR开发环境
  14. Android学习(二)
  15. mysql 中sql的执行顺序
  16. Mysql 创建用户并授权
  17. 【383】defaultdict 相关用法
  18. AIX查看系统安装时间和运行时长
  19. HDU 3635 Dragon Balls(超级经典的带权并查集!!!新手入门)
  20. powershell执行脚本

热门文章

  1. Ubuntu(Debian)apt-get
  2. 字符串相关函数-strcpy()与strcmp()
  3. escape,unescape与encodeURIComponent,decodeURIComponent
  4. note02-计算机网络
  5. hdu-2197 本原串---枚举因子+容斥定理
  6. 【洛谷5279】[ZJOI2019] 麻将(“胡牌自动机”上DP)
  7. pytorch 反向梯度计算问题
  8. Let’s Encrypt 最近很火的免费SSL 使用教程
  9. Ubuntu 16.04 安装 IDEA
  10. iOS 清除xcode缓存和生成文件