您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關django怎么查詢表數據是否存在的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
一.查詢函數
通過模型類.objects屬性可以調用如下函數,實現對模型類對應的數據表的查詢。 (這里objects是django為我們實現的一個模型管理類的對象)
(1)get
返回滿足條件的一條且只有一條數據。返回值是一個模型類的對象。
參數中寫查詢條件。
1)如果查到多條數據,則拋異常MultipleObjectsReturned。
2)查詢不到數據,則拋異常:DoesNotExist
(2)all
返回模型類對應的表中所有的數據。返回的是一個Queryset集合。
(3)filter
返回滿足條件的數據,返回值是一個Queryset集合。
(4)exclude
返回不滿足條件的數據,返回值是一個Queryset集合。
(5)order_by
對查詢的結果進行排序,返回值是一個Queryset集合。
查詢條件格式
條件格式:
模型類屬性名__條件名=值
a)判等
條件名:exact。
可以省略。
b)模糊查詢
contains 包含
startwith 開頭 endwith 結尾
c)空查詢
isnull
d) 范圍查詢
in
e)比較查詢
lt 小于 gt 大于 gte大于等于 lte小于等于
f)日期查詢
year 年份
二.F對象
用于類屬性之間的比較。使用之前需要先導入:
from django.db.models import F
二.Q對象
用于查詢時條件之間的邏輯關系。not and or,可以對Q對象進行~&|操作。 使用前應該先導入:
from django.db.models import Q
三.聚合函數
對查詢結果進行聚合操作。 sum count avg max min
(1)aggregate
調用這個函數來使用聚合。返回值是一個字典。
先要導入聚合類:
from django.db.models import Sum,Count,Max,Min,Avg
(2)count函數 返回值是一個數字.
他們是對查詢結果進行操作。
例如:
查詢結果.aggregate(Count(要統計的字段屬性))
關聯查詢
通過多類的條件查詢一類的數據:
一類名.objects.filter(多類名小寫__多類屬性名__條件名)
通過一類的條件查詢多類的數據:
多類名.objects.filter(關聯屬性__一類屬性名__條件名)
queryset查詢集
查詢集特性:
1)惰性查詢:只有在實際使用查詢集中的數據的時候才會發生對數據庫的真正查詢。
2)緩存:當使用的是同一個查詢集時,第一次使用的時候會發生實際數據庫的查詢,然后把結果緩存起來,之后再使用這個查詢集時,使用的是緩存中的。
可以用角標或者切片的方式來限制查詢值。
感謝各位的閱讀!關于django怎么查詢表數據是否存在就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。