orm单表查询和模糊查询
一.单表查询
1. 返回queryset对象的查询
all() 以列表形式返回全部queryset对象
filter(**kwargs) 筛选
exclude(**kwargs) 排除
reverse() 反转
order_by(field) 排序
distinct() 去重
2. 特殊的queryset对象
values(field) 返回一个可迭代的装有字典的列表
values_list(field) 返回一个可迭代的装有元组的列表
3. 返回具体对象
get(**kwargs) 只能获取一个对象,匹配到多个或没有会报错
first() 第一个,等价于all()[0]
last() 最后一个
4. 返回布尔值
exists() 判断对象列表是否为空
5. 返回数字
count() 计数,返回对象列表的个数
二. 双下划线模糊查询__
对关键字查询的约束
1. 数字查询
id__gt=10 id大于10的 gte是大于等于
id__lt=10 id小于10的 lte是小于等于
id__range=[10,20] id在10-20之间的
id__in=[10,20] id为10或者20的
2. 字符串查询
title__contains="string" 字符串中包含string的,icontains区分大小写
title__startswith="str" 以str开头的字符串,istartswith区分大小写
title__endswith="ing" 以ing结尾的字符串,iendswith区分大小写
3. 日期
date__year=2019 日期是2019年的,month月,day日
orm单表查询和模糊查询的更多相关文章
- MySQL单表多字段模糊查询
今天工作时遇到一个功能问题:就是输入关键字搜索的字段不只一个字段,比如 我输入: 超天才 ,需要检索出 包含这个关键字的 name . company.job等多个字段.在网上查询了一会就找到了答案. ...
- MySQL单表多字段模糊查询解决方法 又折磨半天concat(字段不能为空,如为空则用IFNULL(字段,'');
SELECT `id`,`weixin_id`,`user_name`,`sex`,`area_id`,`address_near`,`phone`,`create_time`,`import_use ...
- MySQL单表多字段模糊查询解决方法
例如现有table表,其中有title,tag,description三个字段,分别记录一条资料的标题,标签和介绍.然后根据用户输入的查询请求,将输入的字串通过空格分割为多个关键字,再在这三个字段中查 ...
- python 之 Django框架(orm单表查询、orm多表查询、聚合查询、分组查询、F查询、 Q查询、事务、Django ORM执行原生SQL)
12.329 orm单表查询 import os if __name__ == '__main__': # 指定当前py脚本需要加载的Django项目配置信息 os.environ.setdefaul ...
- ORM单表查询,跨表查询,分组查询
ORM单表查询,跨表查询,分组查询 单表查询之下划线 models.Tb1.objects.filter(id__lt=10, id__gt=1) # 获取id大于1 且 小于10的值models ...
- Django 模版语法 测试环境 ORM单表查询
模版语法 传值 视图函数向前端html页面传值,基本上所有的数据类型都可以渲染在前端页面上. views.py from django.shortcuts import render, redirec ...
- django ORM单表操作
1.ORM介绍 ORM是“对象-关系-映射”的简称 映射关系: mysql---------Python 表名----------类名 字段----------属性 表记录--------实例化对象 ...
- django框架基础-ORM单表操作-长期维护
############### 单表操作-添加数据 ################ import os if __name__ == '__main__': os.environ.set ...
- Django框架05 /orm单表操作
Django框架05 /orm单表操作 目录 Django框架05 /orm单表操作 1. orm使用流程 2. orm字段 3. orm参数 4. orm单表简单增/删/改 5. orm单表查询 5 ...
- day52:django:ORM单表/多表操作
目录 1.ORM 2.ORM单表增删改查 13个必知必会的查询接口 filter基于双下划线的模糊查询 3.ORM多表增删改查 ORM 什么是ORM? ORM(object relational ma ...
随机推荐
- Redis 4.0.2.3 for Windows (alpha) 下载地址
下载地址如下: https://github.com/tporadowski/redis/releases 如果直接使用redis-server.exe启动报错的话,就使用redis-server.e ...
- 搭建redis-sentinel(哨兵机制)集群
redis怎么才能做到高可用 对于redis主从架构,slave可以对应多个本身可以保障高可用,但是对于一个master节点,如果宕机,整个缓存系统就无法进行写的操作,显然整个系统会无法做到高可用 s ...
- 2019 AI CITY CHALLENGE
官网: https://www.aicitychallenge.org/ 基于来自交通,信号系统,基础设施和运输的传感器数据,存在使运输系统更智能的巨大机会.不幸的是,由于几个原因,进展受到限制 ...
- Taro开发写密码支付弹层
在支付的时候弹出填写密码,模仿了支付宝支付填写密码.主要是利用遮罩的来实现.直接上代码吧. html设计,通过标记控制显示. { showPayPwdInput ? <View classNam ...
- OOP的五大原则
一:单一职责原则. 含义一方面是避免相同的职责分散到不同的类中:另一方面避免一个类承担太多职责. 二:接口隔离原则. 一个类对另一个类的依赖性应当建立在最小的接口上的. 就是定制化服务设计的原则. 三 ...
- PhoenixFD插件流体模拟——UI布局【Export】详解
Liquid Export 流体导出 本文主要讲解Export折叠栏中的内容.原文地址:https://docs.chaosgroup.com/display/PHX3MAX/Liquid+Expor ...
- innodb 关键特性(两次写与自适应哈希索引)
两次写: 场景: 当发生数据库宕机时,可能innodb存储引擎正在写入某个页到表中,而这个页只写了一部分,这种情况被称为部分写失效,如果发生,可以通过重做日志进行恢复,重做日志中记录的是对页的物理操作 ...
- 用BlockingQueue实现的简单发布订阅模式
- CentOS7 安装VNC
系统环境:CentOS Linux release 7.6.1810Kernel:3.10.0-957.el7.x86_64系统现状:最小化安装,没有安装任何图形支持软件 安装图形化支持 不建议安装G ...
- 聚簇索引(Clustered Index)和非聚簇索引 (Non- Clustered Index)
本文转自https://my.oschina.net/u/1866821/blog/297673 索引的重要性数据库性能优化中索引绝对是一个重量级的因素,可以说,索引使用不当,其它优化措施将毫无意义. ...