一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術(shù)及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Django視圖之ORM數(shù)據(jù)庫查詢操作API的實例

Django視圖之ORM數(shù)據(jù)庫查詢操作API的實例

2020-12-14 00:06Pythia丶陌樂 Python

下面小編就為大家?guī)硪黄狣jango視圖之ORM數(shù)據(jù)庫查詢操作API的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

查詢表記錄

查詢相關(guān)API

操作:models.表名.objects.方法()

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<BR>all():     查詢所有結(jié)果
 
filter(**kwargs):  它包含了與所給篩選條件相匹配的對象
 
get(**kwargs):   返回與所給篩選條件相匹配的對象,返回結(jié)果有且只有一個,
      如果符合篩選條件的對象超過一個或者沒有都會拋出錯誤。
 
exclude(**kwargs):  它包含了與所給篩選條件不匹配的對象
 
values(*field):     返回一個ValueQuerySet——一個特殊的QuerySet,運行后得到的并不是一系列
             model的實例化對象,而是一個可迭代的字典序列
 
values_list(*field): 它與values()非常相似,它返回的是一個元組序列,values返回的是一個字典序列
 
order_by(*field):  對查詢結(jié)果排序
 
reverse():    對查詢結(jié)果反向排序
 
distinct():   從返回結(jié)果中剔除重復紀錄
 
count():     返回數(shù)據(jù)庫中匹配查詢(QuerySet)的對象數(shù)量。
 
first():    返回第一條記錄
 
last():    返回最后一條記錄
 
exists():     如果QuerySet包含數(shù)據(jù),就返回True,否則返回False

注意:一定區(qū)分object與querySet的區(qū)別 !!!

object,可以調(diào)用內(nèi)部方法

而queryset則是一個集合  

雙下劃線之單表查詢

?
1
2
3
4
5
6
7
8
9
10
11
models.Tb1.objects.filter(id__lt=10, id__gt=1) # 獲取id大于1 且 小于10的值
 
models.Tb1.objects.filter(id__in=[11, 22, 33]) # 獲取id等于11、22、33的數(shù)據(jù)
models.Tb1.objects.exclude(id__in=[11, 22, 33]) # not in
 
models.Tb1.objects.filter(name__contains="ven")
models.Tb1.objects.filter(name__icontains="ven") # icontains大小寫不敏感
 
models.Tb1.objects.filter(id__range=[1, 2])  # 范圍bettwen and
 
startswith,istartswith, endswith, iendswith 

示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
def query(request):
 #查詢方法API:
 
 #1 all方法:models.表名.objects.all()
 book_all=models.Book.objects.all() #結(jié)果是querySet集合
 # print(book_all)
 
 #2 filter: models.表名.objects.filter()
 ret=models.Book.objects.filter(title='PHP') #結(jié)果是querySet集合
 ret2=models.Book.objects.filter(nid=1) #結(jié)果是querySet集合
 ret3=models.Book.objects.filter(author='Alex',price=35) #結(jié)果是querySet集合,且的關(guān)系,兩個條件都要滿足
 # print(ret)
 # 3 get:models.表名.objects.get()
 ret4=models.Book.objects.get(nid=3) #model對象,如果取不到值則會報錯
 # print(ret4,ret4.price)
 
 #4 exclude:排除條件,取非
 ret5 = models.Book.objects.exclude(author='oldboy')
 
 #5 values方法
 # ret6=models.Book.objects.filter(author='Alex').values('title','price')
 # print('ret6',ret6)
 # #6 values_list方法
 # ret7 = models.Book.objects.filter(author='Alex').values_list('title', 'price')
 # print('ret7', ret7)
 # ret8 = models.Book.objects.filter(author='Alex').values('author').distinct()
 # print('ret8',ret8)
 
 #雙線劃線
 ret9 = models.Book.objects.filter(price__gt=30)
 ret10 = models.Book.objects.filter(title__startswith='P')
 ret11 = models.Book.objects.filter(id_lt=4,id_gt=2) #id 大于2小于4
 
 
 print('ret10',ret10)
 
 
 return HttpResponse("OK")

以上這篇Django視圖ORM數(shù)據(jù)庫查詢操作API的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:http://www.cnblogs.com/supery007/p/7737186.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 我强进了老师身体在线观看 | 国产成人精品男人的天堂538 | 四虎影视在线观看永久地址 | 四虎综合九九色九九综合色 | 肉蒲在线观看 | 免费一级毛片在线播放放视频 | 日本特级大片 | 国产精品免费小视频 | 精品午夜寂寞影院在线观看 | 日本一道本中文字幕 | 情侣宾馆愉拍自拍视频 | 国产精品久久香蕉免费播放 | 亚洲第五页 | 操碰97| 亚州性夜夜射在线观看 | 99在线视频观看 | www.久久99 | 亚洲成人三级 | h高潮娇喘抽搐 | lilisha李丽莎喷水大胆在线 | 免费看60分钟大片视频播放 | 99久久精品免费看国产情侣 | 轻轻操在线视频 | 好性20岁 | 午夜 在线播放 | 亚洲欧美日韩综合在线播放 | 男人天堂色 | 欧美最猛性xxxxx男男 | 波多野结衣一区 | 久久re热在线视频精99 | 日本黄色高清视频网站 | 涩涩屋在线播放 | 国产高清一区二区三区免费视频 | 久久人妻无码毛片A片麻豆 久久热这里只有 精品 | 国产精品久久久免费视频 | 91高清免费国产自产 | 免费观看欧美一级高清 | 国产精品国产国产aⅴ | 激情自拍网 | 日韩aaa | 俄罗斯美女毛茸茸bbwbbw |