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 ...
随机推荐
- ubuntu下挂载物理分区到openmediavault4
准备弄个NAS,但还没想好直接买现成,还是自己组装一台,先在虚拟机上体验下OpenMediaVault4和黑群晖.主系统是ubuntu,但刚买的时候这笔记本是装windows的,除了ubuntu的系统 ...
- js生成带有logo的二维码并保存成图片下载
生成二维码,需要依赖jquery,先引入一个jquery,然后需要一个插件改变过了jquery-qrcode.js 插件代码(需要的自己打开看): /*! jquery-qrcode v0.14.0 ...
- IDEAL启动项目的时候报java.lang.NoClassDefFoundError: javax/servlet/Filter错误
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...
- 手眼标定之相机随动eye-in-hand 示例:handeye_movingcam_calibration
* * This example explains how to use the hand eye calibration for the case where* the camera is atta ...
- windows操作系统python selenium webdriver安装
这几天想搞一个爬虫,就来学习一下selenium,在网上遇见各种坑,特写一篇博文分享一下selenium webdriver的安装过程. 一.安装selenium包 pip install selen ...
- 微信小程序--录音
var app = getApp(), $ = require("../../utils/util.js"); const recorderManager = wx.getReco ...
- select 自匹配问题
原生js给select赋值或者vue绑定数据,会自匹配下拉选项的value或者key,从而显示对应的label或者对应的option的html eg: 原生: <select name=&quo ...
- jmiter性能测试
1. Jmeter简介Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件.相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测 ...
- linux 安装 mysql
二进制安装mysql 1,下载安装包,使用国内站点速度会比较快,如清华站点https://mirrors.tuna.tsinghua.edu.cn 登陆linux系统后,使用wget 进行下载mysq ...
- X1226 和 AT24C16 地址冲突问题
这几天开发eeprom功能的时候,利用单片机的I2C接口访问AT24C16.遇到一个问题: 发现AT24C16的最后一页写不进去.表现为写任何值后,再读取都是0. 经过几天的排查,发现是应为在I2C总 ...