Django 关联查询】的更多相关文章

查询id=1的XXXXX关联的YYYYY信息 a = XXXXX.objects.get(id=1) a.YYYYY.all() 查询id=1的YYYYY关联的XXXXX信息 b = YYYYY.objects.get(id=1) b.字段 通过模型关联查询 查询XXXXX信息,要求XXXXX关联的YYYYY的字段包含'XYZ' XXXXX.objects.filter(YYYYY__字段__contains='XYZ') 查询查询XXXXX信息,要求XXXXX中的YYYYY的id大于3 XXX…
原始需求: 1.一篇文章内容分N个版块,每篇文章的版块数量不同. 2.有个文章搜索功能,需要同时搜索标题和内容. 实现思路: 1.由于每篇文章的内容版块数量不同,因此将每个文章的标题和内容分开存入2张表中. 模型: #标题和属性模型 class ArticleInfoModel(models.Model): title = models.CharField(max_length=200) summary = models.TextField(null=True) author = models.…
Django是一款优秀的web框架,有着自己的ORM数据库模型.在项目中一直使用django数据库,写一篇文章专门记录一下数据库操作.略写django工程创建过程,详写查询过程.可以和sqlalchemy对比来看,会发现有很多想通的地方,例如外键,外键关联关系等.上一篇sqlalchemy查询文章 目录: 1.Django环境搭建 2.数据库建表 3.写入数据 4.查询语句 Django环境搭建 1.安装django pip install django 2.创建工程 django.admin…
<1> aggregate(*args,**kwargs): 通过对QuerySet进行计算,返回一个聚合值的字典.aggregate()中每一个参数都指定一个包含在字典中的返回值.即在查询集上生成聚合. from django.db.models import Avg,Min,Sum,Max 从整个查询集生成统计值.比如,你想要计算所有在售书的平均价钱.Django的查询语法提供了一种方式描述所有 图书的集合. >>> Book.objects.all().aggregat…
聚合¶ Django 数据库抽象API 描述了使用Django 查询来增删查改单个对象的方法.然而,有时候你需要获取的值需要根据一组对象聚合后才能得到.这份指南描述通过Django 查询来生成和返回聚合值的方法. 整篇指南我们都将引用以下模型.这些模型用来记录多个网上书店的库存. from django.db import models class Author(models.Model): name = models.CharField(max_length=100) age = models…
day70 ORM训练专题 :http://www.cnblogs.com/liwenzhou/articles/8337352.html 内容回顾     1. ORM         1. ORM常用字段和属性             1. AutoField(primary_key=True)             2. CharField(max_length=32)             3. IntgerField()                          4. Da…
概述 查询集表示从数据库获取的对象的集合 查询集可以有多个过滤器 过滤器就是一个函数,基于所给的参数限制查询集结果 从SQL角度来说,查询集和select语句等价,过滤器就像where条件 查询集 在管理器上调用过滤器方法返回查询集 查询集经过过滤器筛选后返回新的查询集,所以可以写成链式调用 惰性执行 创建查询集不会带来任何数据库的访问,直到调用数据库时,才会访问数据 直接访问数据的情况: 迭代 序列化 与if合用 返回查询集的方法称为过滤器 all():返回查询集中的所有数据 filter()…
过滤器 过滤器 作用 all() 查出所有行 filter() 可以添加过滤条件 order_by() 查出所有数据,如果有参数则按参数排序,参数是字符串 ,如:"-username"(负号表示降序,正号或不加符号表示升序排列) values() 查出所有数据 每行作为一个字典 exclude() 可以添加条件参数如:age=20,查出所有age不等于20的数据行 过滤器都会返回查询集合 过滤器之间可以联合使用 查询deptno不等于10的所有数据,按deptno排序(降序排列) Em…
先补充两个知识点: 1.group by 大前提:可以按照任意字段分组,但是最好是按照分辨度比较低的来分组(重复比较多的分辨度比较低). group by分组可以单独使用,不搭配其他条件. 分组的字段重复的会被隐去,如果想查看可以用固定的函数去查看. 分组主要是为了查看分组后该字段每个组的个数 select post,count(*) from emp where id>3 group by post having count(id) >5 2.having having是将通过where查询…
Django 数据库查询集合(双下划线连表操作) 目录: 1.Django环境搭建 2.数据库建表 3.写入数据 4.查询语句 Django环境搭建 1.安装django pip install django 2.创建工程 django.admin project myself 3.创建app python manage.py create sql_train 4.设置setting文件 将应用sql_train加入到app中 修改数据库连接方式 将默认的sqlite3数据库修改成mysql数据…