一、获取两个同一模型下查询集queryset的并集使用 | 和union方法

# 获取同一模型下两个查询集的并集# 解决代码如下:records = query1 | query2# 如果不想拥有重复数据,这就需要增加一个方法:distinct()records = (query1 | query2).distinct()# django版本在1.11以后支持union方法q = query1.union(query2) # q将包含query1 + query2的所有唯一记录
q = query1.union(query2, all=True) # q将包含query1 + query2的所有记录(包括重复数据)
q = query1.union(query2,query3) # 多个集合求并集

二、获取不同模型之间的合并

注意union只能对具有相同字段和数据类型的查询集执行联合操作。django为我们提供了一个values_list的方法用来限制所选字段,所以只要我们选出这两个模型的相同字段进行合并即可成功。

User.objects.all().values_list('username', 'email').union(UserProfile.objects.all().values_list('username', 'email'))# 查询集合并结果

三、获取两个queryset的交集用 &


query = Model.objects.filter(...) & Model.objects.filter(...)或者:query1 = Model.objects.filter(...)query2 = Model.objects.filter(...)query = query1 & query2

django 两个查询集(querySet)的并集和交集相关推荐

  1. 【Django入门】——查询集QuerySet介绍

    文章目录 1. 懒惰查询 2. 查询缓存 3. 查询切片 4. 判断有无 在文章[Django入门]--通过模型类查询MySQL数据库基本操作中,我们知道函数all().filter().exclud ...

  2. 【django】查询集QuerySet

    一.概念 Django的ORM中存在 查询集 的概念. 查询集,也称查询结果集.QuerySet,表示从数据库中获取的对象集合. 当调⽤如下过滤器⽅法时,Django会返回查询集(⽽不是简单的列表): ...

  3. sql server限制查询条数_18. Django 2.1.7 查询集 QuerySet

    上一篇Django 2.1.7 模型 - 条件查询 F对象 Q对象 聚合查询讲述了关于Django模型的介绍F对象.Q对象.聚合查询等功能. 不管什么查询,返回的结果都基本是查询集QuerySet,如 ...

  4. Django框架——查询集QuerySet

    目录 1.概念 2.两大特性 (1)惰性执行: (2)缓存: 3.限制查询集 1.概念 Django的ORM中存在查询集的概念. 查询集,也称查询结果集.QuerySet,表示从数据库中获取的对象集合 ...

  5. python遍历queryset_查询集 QuerySet

    1 概念 Django的ORM中存在查询集的概念. 查询集,也称查询结果集.QuerySet,表示从数据库中获取的对象集合. 当调用如下过滤器方法时,Django会返回查询集(而不是简单的列表): a ...

  6. 查询集 QuerySet

    1 概念 Django的ORM中存在查询集的概念. 查询集,也称查询结果集.QuerySet,表示从数据库中获取的对象集合. 当调用如下过滤器方法时,Django会返回查询集(而不是简单的列表): a ...

  7. python教学查询,python基础教程之查询集 QuerySet和管理器Manager

    查询集 QuerySet 查询集,也称查询结果集.QuerySet,表示从数据库中获取的对象集合. 当调用如下过滤器方法时,Django会返回查询集(而不是简单的列表): all():返回所有数据. ...

  8. Django框架(13.Django中的查询集)

    查询集 在使用Django中的模型类查询函数:all, filter, exclude, order_by调用这些函数会产生一个查询集,QuerySet类对象可以继续调用上面的所有函数. 查询集特性 ...

  9. 用c 语言实现数组的并集,C ++程序查找两个未排序数组的并集和交集

    在本文中,我们将讨论一个程序来查找两个给定的未排序数组的并集和交集. 让我们用" A"和" B"表示两个数组.然后这些数组的并集用A∪B表示,它基本上是两个给定 ...

最新文章

  1. [SinGuLaRiTy] KM算法
  2. Api文档生成工具与Api文档的传播(pdf)
  3. Flutter入门:Image组件
  4. Linux最大线程数限制及当前线程数查询
  5. 如何提高gps精度_如何在锻炼应用程序中提高GPS跟踪精度
  6. P2596 [ZJOI2006]书架(fhq treap)
  7. powercfg -h off_万代 S.H.Figuarts「假面骑士01 金属腾蝗形态」
  8. Navicat连接虚拟机Linux的数据库时,出现错误代码“10038”
  9. 随想录(产品-工程开发-算法)
  10. @程序员们,华为员工 300 万分红,老板给你多少年终奖?
  11. 关于挽救爱情的一次求学尝试
  12. dpkg:处理软件包 xxx (--configure)时出错
  13. Apache CXF WebService 框架
  14. android 焦点的作用,详细介绍Android中的视图焦点Focus的使用
  15. 5分钟了解Pandas的透视表
  16. 只会增删改查的程序员出路在哪里?
  17. OSChina 周三乱弹 —— 我居然在 osc 里追剧
  18. 用MSN Cartoon做的卡通自画像
  19. c语言第二版课后答案pdf,数据结构(C语言版)第2版习题答案—严蔚敏.pdf
  20. 速读《构建之法 现代软件工程》的五个问题

热门文章

  1. MySQL(InnoDB剖析):15---table之(表空间:段(segment)、区(extent)、页(page))
  2. 上位机软件工程师_硬件工程师吐槽起自己来能有多狠?看看,你就知道了
  3. 四足机器人质心准静态控制器(三)
  4. c++实现高斯牛顿法(Gauss-Newton method)原理
  5. Gradle 2.0 用户指南翻译——第二十二章. 标准的 Gradle 插件
  6. CCF计算机职业资格考试 201812-3CIDR合并 Python实现
  7. BINDENG(Gcoge) 技术内幕--Bindeng(Gcoge) 的特色---无以伦比,统领全球!
  8. Unity 铰链、弹簧、特殊的物理关节
  9. 使用python3爬取 黑客 小说所有章节
  10. 软件测试自学吉他app,吉他世界网APP