Django models字段查询谓词表
谓词 | 含义 | 示例 | 等价SQL语句 |
exact | 精确等于 | Comment.objects.filter(id__exact=14) | select * from Comment where id=14 |
iexact | 大小写不敏感的等于 | Comment.objects.filter(headline__iexact=’I like this’) | select * from Comment where upper(headline)=’I LIKE THIS’ |
contains | 模糊匹配 | Comment.objects.filter(headline__contains=’good’) | select * from Comment where headline like “%good%” |
in | 包含 | Comment.objects.filter(id__in=[1,5,9]) | select * from Comment where id in (1,5,9) |
gt | 大于 | Comment.objects.filter(n_visits__gt=30) | select * from Comment where n_visits>30 |
gte | 大于等于 | Comment.objects.filter(n_visits__gte=30) | select * from COmment where n_visits>=30 |
lt | 小于 | ||
lte | 小于等于 | ||
startswith | 以…开头 | Comment.objects.filter(body_text__startswith=”Hello”) | select * from Comment where body_text like ‘Hello%’ |
endswith | 以…结尾 | ||
range | 在…范围内 | start_date=datetime.date(2015,1,1) end_date=datetime.date(2015.2.1) Comment.objects.filter( pub_date__range=(start_date,end_date) ) |
select * from Comment where pub_date between ‘2015-1-1’ and ‘2015-2-1’ |
year | 年 | Comment.objects.filter( pub_date__year=2015 ) |
select * from Comment where pub_date between ‘2015-1-1 0:0:0’ and ‘2015-12-31 23:59:59’ |
month | 月 | ||
day | 日 | ||
week_day | 星期几 | ||
isnull | 是否为空 | Comment.objects.filter( pub_date__isnull=True ) |
select * from Comment where pub_date is NULL |
filter(**kwargs): 返回符合筛选条件的数据集
exclude(**kwargs): 返回不符合筛选条件的数据集
Comment.objects.filter(pub_date__year=2015)
多个filter和exclude可以链接在一起查询
Comment.objects.filter(pub_date__year=2015).exclude(pub_date__month=1).exclude(n_visits__exact=0)
get() :查询单条记录,注意没有查询到数据的时候会报错
Comment.objects.get(id_exact=1)
all(): 查询所有数据
Comment.objects.all()
Comment.objects.all()[:10]
Comment.objects.all[10:20]
order_by(): 排序
Comment.objects.order_by('headline')
Django models字段查询谓词表的更多相关文章
- django models的点查询/跨表查询/双下划线查询
django models 在日常的编程中,我们需要建立数据库模型 而往往会用到表与表之间的关系,这就比单表取数据要复杂一些 在多表之间发生关系的情形下,我们如何利用models提供的API的特性获得 ...
- Django模型层之字段查询参数及聚合函数
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 字段查询是指如何指定SQL WHERE子句的 ...
- django字段查询参数及聚合函数
字段查询是指如何指定SQL WHERE子句的内容.它们用作QuerySet的filter(), exclude()和get()方法的关键字参数. 默认查找类型为exact. 下表列出了所有的字段查询参 ...
- Django开发之路 二(django的models表查询)
django的models表查询 一.单表查询 (1) all(): 查询所有结果 # 返回的QuerySet类型 (2) filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 #返 ...
- Django orm进阶查询(聚合、分组、F查询、Q查询)、常见字段、查询优化及事务操作
Django orm进阶查询(聚合.分组.F查询.Q查询).常见字段.查询优化及事务操作 聚合查询 记住用到关键字aggregate然后还有几个常用的聚合函数就好了 from django.db.mo ...
- Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终端打印SQL语句,脚本调试)
Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终 ...
- Django框架(六):模型(二) 字段查询、查询集
1. 字段查询 通过模型类.objects属性可以调用如下函数,实现对模型类对应的数据表的查询. 函数名 功能 返回值 说明 get 返回表中满足条件的一条且只能有一条数据. 返回值是一个模型类对象. ...
- Django models .all .values .values_list 几种数据查询结果的对比
Django models .all .values .values_list 几种数据查询结果的对比
- Django对DateTimeField时间字段查询QuerySet为空的解决方案
今天在用的Django中的filter()方法对DateTimeField字段查询时碰到了问题,抓耳挠腮一下午,终于解决了,我觉得花了一下午的时间怎么着也得记录下吧(无语)...... 问题描述 : ...
随机推荐
- TrimLeft TrimRight
strming.TrimLeft(); //将字符串最前面的空格修整掉.当在没有参数的情况下调用时,TrimLeft删除换行符,空格和tab字符. strming.TrimRight()://消除从 ...
- 【Python】批量查询-提取站长之家IP批量查询的结果加强版本v3.0
1.工具说明 写报告的时候为了细致性,要把IP地址对应的地区给整理出来.500多条IP地址找出对应地区复制粘贴到报告里整了一个上午. 为了下次更好的完成这项重复性很高的工作,所以写了这个小的脚本. 某 ...
- concurrent.futures- 启动并行任务
python因为其全局解释器锁GIL而无法通过线程实现真正的平行计算.这个论断我们不展开,但是有个概念我们要说明,IO密集型 vs. 计算密集型. IO密集型:读取文件,读取网络套接字频繁. 计算密集 ...
- cocos2d-x在App中的应用
cocos2d-x是一个应用广泛的开源游戏引擎,主要是应用与开发2D游戏,开源运行于多个平台,如果只是针对于移动端平台而言,可以运行于android和ios平台. cocos2d-x目前的版本是3.1 ...
- Go语言学习之路(持续更新中)
菜鸟 Go语言教程 教程(RUNOOB.COM):http://www.runoob.com/go/go-tutorial.html Go全球官网:https://golang.org/ (2018- ...
- Python-HTML CSS题目
一.简答1.手写html模板,并解释模板每个标签的作用 <!doctype html> 文件类型html <html>页面根 <head>后勤内容 <meta ...
- h5之js生成二维码
目录架构: index.html <!DOCTYPE> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang=& ...
- C++ code:数组初始化
具有初始化的数组定义,其元素个数可以省略,即方括号中的表达式可以省略.这时候,最后确定的元素个数取决于初始化值的个数.例如: #include<iostream> using namesp ...
- pytest八:skip 跳过用例
这是一个快速指南,介绍如何在不同情况下跳过模块中的测试1.无条件地跳过模块中的所有测试:pytestmark = pytest.mark.skip("all tests still WIP& ...
- python接口自动化测试九:重定向相关
allow_redirects=False 不重定向 # 获取重定向后的地址 loc = r.headers # 相对地址 host = 'https://i.cnblogs.com/' url = ...