Django查询之—— Q查询
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) |
本文来自博客园,作者:wellplayed,转载请注明原文链接:https://www.cnblogs.com/wellplayed/p/17813791.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix