首页 > 其他分享 >Django查询之—— Q查询

Django查询之—— Q查询

时间:2023-11-06 21:35:33浏览次数:31  
标签:__ 指定 Django filter 条件 查询 连接

Q查询

 

作用: filter的字段筛选条件指定多个, 默认是and连接. 要实现or或者not需要借助Q查询

首先要导入模块

from django.db.models import Q

Q(字段__条件=值)

 

连接条件:and or not

# and的3种情况
        1. filter中指定多个参数逗号隔开: filter(参数1, 参数2)
        2. 查询指定多个逗号隔开: filter(Q(), Q())
        3. 使用&连接符: filter(Q() & Q())   

  

# 连接条件or
        filter(Q() | Q())

  

# 连接条件not
        filter(~Q() | Q()) 

  

Q的高阶用法:

能够将查询条件的左边变量的形式变成字符串的形式

q = Q()               # 第一步: 实例化一个q对象
q.connector = 'or'    # 第二步: 定义连接条件
q.children.append(('sale__gt', 100))    # 第三步: 指定字符串形式的查询字段条件, 以及范围100
q.children.append(('price__lt', 600))
res = models.Book.objects.filter(q)     # 第四步: 将q对象传入filter
print(res)

  

标签:__,指定,Django,filter,条件,查询,连接
From: https://www.cnblogs.com/wellplayed/p/17813791.html

相关文章

  • Django查询之—— F查询
    F查询 作用:能够帮助你直接获取到表中某个字段对应的数据首先要导入模块fromdjango.db.modelsimportF 用法一:查询卖出数大于库存数的书籍res=models.Book.objects.filter(sale__gt=F('stock'))print(res)用法二:将所有书籍的价格提升500块res=mode......
  • django+爬虫+钉钉机器人
    Views类urls类Html结果......
  • JAVA多线程并发查询百万数据的内存占用问题?
    在Java中使用多线程并发查询百万数据时,内存占用是一个需要考虑的重要问题。以下是一些解决该问题的方案:分批查询:将数据分成较小的批次进行查询,而不是一次性加载全部数据。这样可以减少每个线程需要处理的数据量,降低内存占用。可以将查询结果分组或按需加载,以保持内存占用的合理范......
  • 视频集中存储/云存储EasyCVR启动后查询端口是否被占用出错,该如何解决?
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力,也具备接入AI智能分析的能......
  • 视频集中存储/云存储EasyCVR启动后查询端口是否被占用出错,该如何解决?
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力,也具备接入AI智能分析的......
  • RGB颜色查询对照表(HTML RGB 颜色代码表,颜色对照表)
    RGB颜色查询对照表 颜色码对照表颜色英文代码形象描述十六进制RGBLightPink浅粉红#FFB6C1255,182,193Pink粉红#FFC0CB255,192,203Crimson猩红#DC143C220,20,60LavenderBlush脸红的淡紫色#FFF0F5255,240,245PaleVioletRed苍白的紫罗兰红色#DB7093219,112,147HotPink热情的粉红#FF69......
  • Oracle高级技巧:使用PIVOT函数和窗口函数解决只查询一条数据的问题
    写本博客的目为了温故而知新把学习过程记录下来,以备后查。当我们需要将表格中的行转置为列时,通常可以使用PIVOT函数来实现。但是在某些情况下,由于创建日期等字段相同,只有一条数据会被查询出来。这时候,我们就可以使用窗口函数进行分组和排序,以便返回具有相同创建日期的所有记录。......
  • Django实战项目-学习任务系统-配置定时调度任务
    接着上期代码内容,继续完善优化系统功能。 本次增加配置定时调度任务功能,学习任务系统定时任务管理添加的定时学习任务,需要通过配置调度任务,定时发布周期性的学习任务。以及每天定时发送学生用户属性值,积分值等信息到学生用户知晓。以及其他需要定时调度的任务都可以配置到定时......
  • 饮冰三年-人工智能-Django淘宝拾遗-86- Django Debug Toolbar调试工具
       在开发Django应用程序时,调试是不可或缺的一部分。DjangoDebugToolbar是一个强大的调试工具,可以帮助开发者深入了解应用程序的性能和执行细节。本文将介绍DjangoDebugToolbar的安装步骤以及如何在Django应用程序中使用该工具。项目使用的是github上开源的项目......
  • 微信小程序云开发如何实现多条件多字段模糊查询
    之前的博文中,已经跟大家介绍过,微信小程序云开发如何实现单条件单字段的模糊查询,这个是很常见的业务需求。在一些更复杂的场景下,我们需要实现多条件多字段的模糊查询,比如同时兼容对商品名称、类别、产地等多条件的模糊查询。我们看一下云开发如何实现。什么是多条件模糊查询(与、或)公......