django模型(增删改查等)
Django提供的模型操作起来数据库非常方便
以自定义模型名字Demo为例:
获取所有数据:all()
demo.objects.all() #返回queryset对象 #这个语句和Select * from demo还是有一定区别的
demo.objects.all() 是直接获取所有列,速度上比select要快
单个精确查找数据:get()
demo.objects.get(name='qc') #一般精确找一条数据用get,需要注意的是,如果查找的数据不存在,或者,有多个数据会报异常。
过滤,精确查找:filter()
相对来说,filter的用法就比较多了,排序,精确查找等
例1:条件
demo.objects.filter(name='qc') #返回的是一个list对象 #相当于sql语句
select * from demo whert name='qc';
例2:多个条件组合
demo.objects.filter(name='qc',id=3) #相当于sql语句
select * from demo where name='qc' and id =3;
例3:__双下划线
demo.objects.filter(id__lte=) #注意这里两个下划线__lte
相当于sql语句:
select * from demo where id <= 3; demo.objects.filter(name__contains='qc')
相当于sql语句:
select * from demo where name like '%qc%'
例4:排序
demo.objects.order_by("name")
相当于sql语句:
select * from demo order by name; #默认正向排序
也可以降序
demo.objects.order_by("-name") #注意这里有一个减号
相当于sql语句:
select * from demo order by name desc;
#在filter基础上排序
demo.objects.filter(name='qc').order_by('name') 相当于sql语句:
select * from demo where name='qc' order by name asc;
例5:切片数据
demo.objects.order_by('name')[0] #只取第一条数据
相当于sql语句:
select * from demo order by name limit 1;
demo.objects.order_by('name')[0:2] #只取2条数据
相当于sql语句:
select * from demo order by name offset 0 limit 2;
django模型(增删改查等)的更多相关文章
- 饮冰三年-人工智能-Python-24 Django ORM增删改查
一:首先使用默认的sqlite3创建表 1:现在在models.py中添加表模型 from django.db import models # Create your models here. cla ...
- django ORM 增删改查 模糊查询 字段类型 及参数等
ORM 相关 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (), gen ...
- 基于django做增删改查组件,分页器组件
增删改查组件 一.Djangoadmin的启发 二.基于Djangoadmin实现数据的增删改查 分页器组件 分页器组件的介绍以及源码解读 补充:源码下载,
- django数据库增删改查
django中数据库基本操作: 1.同步数据库 python manage.py makemigrations #生成migrations python manage.py migrate #应用mi ...
- python-django使用ORM模型增删改查CRUD
from weibo.models import WeiboUser as User user_obj = User.objects.get(pk=1) user_obj.pk Out[4]: 1 u ...
- django的增删改查
前置条件: 已有一个model (tbl_user) ,用户表 1.查询 # 查询用户表 username是cx的数据 user_object = tbl_user.objects.filter(us ...
- Django之数据表增删改查
Django数据增删改查: 上课代码 from django.shortcuts import render,HttpResponse # Create your views here. from a ...
- python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查
Django中的ORM简介 ORM概念:对象关系映射(Object Relational Mapping,简称ORM): 用面向对象的方式描述数据库,去操作数据库,甚至可以达到不用编写SQL语句就能够 ...
- Django 06 Django模型基础1(ORM简介、数据库连接配置、模型的创建与映射、数据的增删改查)
Django 06 Django模型基础1(ORM简介.数据库连接配置.模型的创建与映射.数据的增删改查) 一.ORM系统 #django模型映射关系 #模型类-----数据表 #类属性-----表字 ...
随机推荐
- TinyMind 多标签图像分类竞赛 之路
竞赛传送门:https://www.tinymind.cn/competitions/42 我们就是傻狗天仙配啦~ 决赛排行榜: 这次比赛感谢第一名的 baseline:https://blog.cs ...
- Apache + PHP配置
因工作需要,重新配置了Apache和PHP.想起当年曾经配置过,但是已经忘得差不多了.而且,也没有记录.从我个人来看,确实缺乏这样的训练,从国家教育体系来看,似乎也从未有过做科学记录的训练.中国的瓷器 ...
- HDU 5985/nowcoder 207D - Lucky Coins - [概率题]
题目链接:https://www.nowcoder.com/acm/contest/207/D 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5985 ...
- tensorflow模型在实际上线进行预测的时候,使用CPU工作
最近已经训练好了一版基于DeepLearning的文本分类模型,TextCNN原理.在实际的预测中,如果默认模型会优先选择GPU那么每一次实例调用,都会加载GPU信息,这会造成很大的性能降低. 那么, ...
- php$_SERVER['SCRIPT_NAME']和__FILE__的区别
$_SERVER['SCRIPT_FILENAME'] -------> 当前执行程序的绝对路径及文件名__FILE__ ...
- day4_高效处理文件
read()将文件内容从磁盘中全部读出,放到内存,再给cpu处理,性能低,如果文件量大,很容易内存溢出或卡死. 高效方式: 方式一:一般不用的,代码行多 f = open('users.txt','r ...
- 添加linux系统调用的两种方式
原文:https://blog.csdn.net/sdulibh/article/details/51889279 向linux内核添加系统调用,一是通过编译内核添加,二是通过内核模块的方式添加: 一 ...
- 【Python基础】json.dumps()和json.loads()、json.dump()和json.load()的区分
json文件处理涉及的四个函数json.dumps()和json.loads().json.dump()和json.load()的区分 一.概念理解 1.json.dumps()和json.loads ...
- min-max容斥笔记及例题
这个东西是一个非常好玩的数学工具. $$max(S)=\sum_{T\subset S}(-1)^{|T|-1}min(T)$$ $$max_k(S)=\sum_{T\subset S}(-1)^{| ...
- Linux下Redis的安装与启动
一. 进入目录(我们准备将redis装入opt文件夹) $ cd /opt/ 二.下载redis压缩包 $ wget http://download.redis.io/releases/redis-4 ...