python web-Django ORM常用查询方式

Django默认自带的ORM功能非常强大,调用执行的方法去查询即可,不需要自己去写SQL了。

常用参数

__exact 精确等于 like ‘aaa‘

__iexact 精确等于 忽略大小写 ilike ‘aaa‘

__contains 包含 like ‘%aaa%‘

__icontains 包含 忽略大小写 ilike ‘%aaa%‘,但是对于sqlite来说,contains的作用效果等同于icontains。

__gt 大于

__gte 大于等于

__lt 小于

__lte 小于等于

__in 存在于一个list范围内

__startswith 以…开头

__istartswith 以…开头 忽略大小写

__endswith 以…结尾

__iendswith 以…结尾,忽略大小写

__range 在…范围内

__year 日期字段的年份

__month 日期字段的月份

__day 日期字段的日

__isnull=True/False

__isnull=True 与 __exact=None的区别

实例

检索特定的对象

使用以下两个方法:

fileter(**kwargs)

返回一个与参数匹配的QuerySet,相当于等于(=).

exclude(**kwargs)

返回一个与参数不匹配的QuerySet,相当于不等于(!=)。

QuerySet方法

# 这是查找前5个entry表里的数据

Entry.objects.all()[:5]

# 这是查找从第5个到第10个之间的数据。

Entry.objects.all()[5:10]

# 这是查询从第0个开始到第10个,步长为2的数据。

Entry.objects.all()[:10:2]

# 模糊查询

Entry.objects.get(headline__contains=’Lennon’)

Q对象的复杂查询 

Q(question__startswith=’Who’) | Q(question__startswith=’What’) Poll.objects.get(Q(question__startswith=’Who’), Q(pub_date=date(2018, 6, 1)) | Q(pub_date=date(2018, 6,4)) )

原文地址:https://www.cnblogs.com/tuobei/p/12588191.html

时间: 2024-10-08 05:15:27

python web-Django ORM常用查询方式的相关文章

Django - - 基础 - - Django ORM常用查询语法及进阶

目录 一般操作 必知必会13条 单表查询之神奇的双下划线 ForeignKey操作 正向查找 反向操作 ManyToManyField class RelatedManager 聚合查询和分组查询 聚合 分组 F查询和Q查询 F查询 Q查询 锁和事务 锁 事务 其他鲜为人知的操作(有个印象即可) Django ORM执行原生SQL QuerySet方法大全 Django终端打印SQL语句 在Python脚本中调用Django环境 1, 一般操作 官网文档:https://docs.djangop

django ORM常用查询条件

假设有一个模型 class Article(models.Model): title=models.CharField(max_length=50) content=models.TextField() class Meta: db_table='book' 对于查询结果是结果集,即通过filter进行查询所得的对象来说,可通过query属性来查看django转换之后的原生sql语句 -- article=Article.objects.filter(title='Hello World') p

django orm 常用查询筛选

大于.大于等于 __gt 大于 __gte 大于等于 User.objects.filter(age__gt=10) // 查询年龄大于10岁的用户 User.objects.filter(age__gte=10) // 查询年龄大于等于10岁的用户 小于.小于等于 __lt 小于 __lte 小于等于 User.objects.filter(age__lt=10) // 查询年龄小于10岁的用户 User.objects.filter(age__lte=10) // 查询年龄小于等于10岁的用

python-django-ORM,常用查询方式

介绍django model 的一些常用查询方式 首先是一些文档性的帮助 __exact 精确等于 like ‘aaa’ __iexact 精确等于 忽略大小写 ilike ‘aaa’ __contains 包含 like ‘%aaa%’ __icontains 包含 忽略大小写 ilike ‘%aaa%’,但是对于sqlite来说,contains的作用效果等同于icontains. __gt 大于 __gte 大于等于 __lt 小于 __lte 小于等于 __in 存在于一个list范围内

Django ORM常用字段及参数

目录 Django ORM常用字段及参数 models中的常用字段 字段内的关键字参数 数据库查询优化(面试问题) Django ORM如何开启事务操作 MTV与MVC模型(了解) Django ORM常用字段及参数 models中的常用字段 models中常用字段与数据库中的对应关系 models中常用字段 数据库对应字段 AutoField(primary_key=True) 主键字段 CharField(max_length=32) varchar(32) IntegerField() i

Django—ORM常用字段和参数

一.ORM常用的字段和参数 1.0 常用字段 # AutoField: int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. # IntegerField: 一个整数类型,范围在 -2147483648 to 2147483647.(一般不用它来存手机号(位数也不够),直接用字符串存,) # CharField: 字符类型,必须提供max_length参数, max_length表示字符长度 # DateField: 日期字

python web服务常见的部署方式

引自 - 全面解读python web 程序的9种部署方式 python有很多web 开发框架,代码写完了,部署上线是个大事,通常来说,web应用一般是三层结构 web server ---->application -----> DB server 主流的web server 一个巴掌就能数出来,apache,lighttpd,nginx,iis application,中文名叫做应用服务,就是你基于某个web framework写的应用代码 DB server 泛指存储服务,web开发中用

python web——Django架构

环境:windows/linux/OS 需要的软件:Firefox 浏览器(别的也可以 不过firfox和python的webdriver兼容性好) git版本控制系统(使用前要配置 用户 编辑器可以用系统的 notepad) python包管理工具pip(3.4以及之后的版本在python中集成了 3.4以前的需要安装 命令行中执行which pip3 返回路径即表示安装完成) python(在安装时选择把 python.exe加入系统路径中) Django 1.11 (命令行pip3 ins

django orm 的查询条件

Django的ORM查询操作: 查询数据库操作是一个非常重要的技术.在Django中,查询一般就是使用filter.exclude.get三个方法来实现,在调用这些方法的时候传递不同的参数来实现查询需求. 在mysql中,想要查询数据,就需要使用where关键字加上字段条件去查询,在Django的orm之中,我们使用filter.exclude.get关键词加上field+__+condition作为关键词去查询,现在我们就来介绍一下这里的condition: 注:查询原生SQL语句: 1.在q