1.13条必知必会

<> all():                 查询所有结果

<> filter(**kwargs):      它包含了与所给筛选条件相匹配的对象

<> get(**kwargs):         返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误。

<> exclude(**kwargs):     它包含了与所给筛选条件不匹配的对象

<> values(*field):        返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一系列model的实例化对象,而是一个可迭代的字典序列

<> values_list(*field):   它与values()非常相似,它返回的是一个元组序列,values返回的是一个字典序列

<> order_by(*field):      对查询结果排序

<> reverse():             对查询结果反向排序,请注意reverse()通常只能在具有已定义顺序的QuerySet上调用(在model类的Meta中指定ordering或调用order_by()方法)。

<> distinct():            从返回结果中剔除重复纪录(如果你查询跨越多个表,可能在计算QuerySet时得到重复的结果。此时可以使用distinct(),注意只有在PostgreSQL中支持按字段去重。)

<> count():              返回数据库中匹配查询(QuerySet)的对象数量。

<> first():              返回第一条记录

<> last():               返回最后一条记录

<> exists():             如果QuerySet包含数据,就返回True,否则返回False

2.

 """

  ORM小练习

  """

  import os

  if __name__ == '__main__':
#加载Djang00项目的配置信息
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ormday69.settings")
#导入Django,并启动Django项目
import django
django.setup() from app01 import models
#查询所有的人
ret = models.Person.objects.all()
print(ret)
#get查询
ret = models.Person.objects.get(name="小黑")
print(ret)
#filter
ret = models.Person.objects.filter(id=)#不存在返回一个空的QuerySet,不会报错
print(ret)
# 就算查询的结果只有一个,返回的也是QuerySet,我们要用索引的方式取出第一个元素
ret = models.Person.objects.filter(id=)[]
print(ret)
print("exclude".center(,"*"))
#exclude
ret = models.Person.objects.exclude(id=)
print(ret)
print("values".center(,'*'))
#values 返回一个QuerySet对象,里面都是字典。不写字段名,默认查询所有的字段
ret = models.Person.objects.values("name","birthday")
print(ret)
print("values_lisst".center(,'*'))
#values 返回一个QuerySet对象,里面都是元组。不写字段名,默认查询所有的字段
ret = models.Person.objects.values_list("name","birthday")
print(ret)
print("order_by".center(, '*'))
#order_by按照指定的字段排序
ret = models.Person.objects.all().order_by("birthday")
print(ret)
print("reverse".center(, '*'))
# reverse 将一个有序的QuerySet 反转顺序
#对有序的QuerySet才能调用reverse
ret = models.Person.objects.all().order_by("birthday").reverse()
print(ret)
print("first".center(, '*'))
#first 返回QuerySet中的第一个对象
ret = models.Person.objects.all().first()
print(ret)
print("last".center(, '*'))
# last 返回QuerySet中的最后一个对象
ret = models.Person.objects.all().last()
print(ret)
print("exists".center(, '*'))
# exists 判断表里面有没有数据
ret = models.Person.objects.exists()
print(ret)

参考人莱河:https://www.cnblogs.com/xudj/p/10486505.html

最新文章

  1. ASP.NET 前后台调用方法
  2. Cordova - 使用Cordova开发iOS应用实战5(获取手机里照片,并编辑)
  3. 动态树之link-cut tree
  4. crm SSRS 报表 导出格式控制
  5. MyEclipse — Maven+Spring+Struts+Hibernate 整合 [学习笔记-5]
  6. ZOJ Problem Set - 1002(DFS)
  7. JavaScript那些事儿(01): 对象
  8. js读取 存入cookie
  9. 对xlslib库与libxls库的简易封装
  10. HDU 3404&amp;POJ 3533 Nim积(二维&amp;三维)
  11. 常用 SQL 语句使用的总结
  12. 201521123040《Java程序设计》第13周学习总结
  13. python-day2列表、元祖、字典;编码;字符串
  14. Pyjwt ,python jwt ,jwt
  15. mysql YEARWEEK(date[,mode]) 函数 查询上周数据 以及本周数据
  16. http请求的全过程
  17. tab template
  18. Notes of Daily Scrum Meeting(12.17)
  19. httpd: Could not reliably determine the server&#39;s fully qualified domain name(转)
  20. Gym 101201I Postman (贪心)

热门文章

  1. 安装mysql-workbench
  2. HttpRequest 工具
  3. Jdbc封装和对CURD的封装
  4. ESB介绍
  5. 【并查集模板】 【洛谷P2978】 【USACO10JAN】下午茶时间
  6. 如何用git将项目代码上传到github - CSDN博客
  7. pycharm中引入相对路径错误
  8. 阿里云MaxCompute 2019-7月刊
  9. sprite学习
  10. 统计Linux下的CPU状态信息