日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Django?ORM?F對象和Q對象查詢_python

作者:世界盡頭與你 ? 更新時間: 2022-11-24 編程語言

閱讀文本前請參考此文章的數據表結構

Django提供了兩個非常有用的工具:F對象和Q對象,方便了在一些特殊場景下的查詢過程。

1.F對象查詢

F對象用于操作數據庫中某一列的值,它可以在沒有實際訪問數據庫獲取數據值的情況下對字段的值進行引用

使用F對象之前需要將它引入當前的環境中:

from django.db.models import F

如果要查詢up小于等于down的Comment:

comment = Comment.objects.filter(up__lte=F('down'))

要查詢所有up值大于down值2倍的Comment對象,可以這樣實現:

comment = Comment.objects.filter(up__gt=F('down') * 2)

使用F查詢讓表中的某個字段值+1:

comment = Comment.objects.get(id=1)
comment.up = F('up') + 1
comment.save()

2.Q對象查詢

使用Q對象之前需要將它引入當前的環境中:

from django.db.models import Q

如果想要查詢up大于60或down大于60的所有Comment對象:

comment = Comment.objects.filter(Q(up__gt=60) | Q(down__gt=60))

Q對象也可以與關鍵字參數組合在一起使用,但是在這種情況下,Django規定,Q對象必須放在前面:

在這里插入圖片描述

多個Q對象可以使用“&”(與)、“|”(或)運算符組合,產生一個新的Q對象。可以使用“”(非)運算符取反,即實現NOT查詢??

原文鏈接:https://blog.csdn.net/Gherbirthday0916/article/details/127274199

欄目分類
最近更新