日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

django 利用Q對象與F對象進(jìn)行查詢的實(shí)現(xiàn)

瀏覽:287日期:2024-10-05 18:09:05

Q對象:

優(yōu)勢:可以實(shí)現(xiàn) 與|或|非 組合查詢。

給幾個(gè)小例子就一目了然了:

Book.objects.filter(id__gt=2,bread__gt=20) #and關(guān)系Book.objects.filter(Q(bread__gt=20) & Q(id__gt=2)) #and關(guān)系Book.objects.filter(Q(bread__gt=20) | Q(id__gt=2)) #or關(guān)系Book.objects.filter.(~Q(id=3)) # ~表示not,查詢編號不等于3的圖書

F對象:

優(yōu)勢:能利用當(dāng)前obj的值進(jìn)行比較。

Book.objects.filter(bread__gt=F(’bcomment’)*2) #閱讀量大于評論量的圖書*2,可以在F對象上使用算術(shù)運(yùn)算

以前你可能經(jīng)常只進(jìn)行Book.objects.filter(bread__gt=20)這樣的查詢 ,有了F對象你就可以和當(dāng)前obj的屬性值進(jìn)行比較了。

實(shí)際開發(fā)中遇到的問題:

如果事情都按照示例那樣進(jìn)行就好了,然而開發(fā)中總會(huì)遇到一些坑。

比如下面這個(gè)是我實(shí)際開發(fā)中遇到的問題:

user = request.userInterviewer.object.filter(Q(interviewer_1=user) | Q(interviewer_2=user) | Q(interviewer_3=user))

目的是想查一面或者二面或者三面的面試官包含user的面試。

其中interviewer_1、interviewer_2、interviewer_3是Interviewer表中的三個(gè)多對多字段的外鍵。

結(jié)果可能讓意想不到,結(jié)果是一個(gè)包含多個(gè)重復(fù)值的查詢集,置于為什么會(huì)重復(fù),我并沒用做深入調(diào)查,但是這在django ORM多表查詢中會(huì)經(jīng)常遇到,這就是網(wǎng)上說的一般的情況下,QuerySet 中不會(huì)出來重復(fù)的,重復(fù)是很罕見的,但是當(dāng)跨越多張表進(jìn)行檢索后,結(jié)果并到一起,可能會(huì)出來重復(fù)的值。

那么要怎么解決這個(gè)問題呢?很簡單,后面加個(gè).distinct()作用就是去重。

user = request.userInterviewer.object.filter(Q(interviewer_1=user) | Q(interviewer_2=user) | Q(interviewer_3=user)).distinct()

補(bǔ)充知識:Django中models利用ORM對Mysql進(jìn)行查表的語句

一: all() 返回模型類對應(yīng)表格中所有的數(shù)據(jù)。

二:get():返回表格中滿足條件的一條數(shù)據(jù),如果查到多條數(shù)據(jù),則拋異常:MultipleObjectsReturned,查詢不到數(shù)據(jù),則拋異常:DoesNotExist。

三:filter():參數(shù)寫查詢條件,返回滿足條件 QuerySet 集合數(shù)據(jù)。

條件格式:

“模型類屬性名” __條件名=值(此處模型類屬性名為model里面的屬性名,不是數(shù)據(jù)庫里面表的字段名)

1)判斷是否存在

BookInfo.object.filter(id__exact=1)此處的__exact 可以省略

2)模糊查詢

>查詢書名包含傳的圖書

BookInfo.objects.filter(btitle__contains=’傳’)

>查詢書名不為空的圖書

BookInfo.objects.filter(btitle__isnull=False)

>查詢圖書id在1,3,5的圖書

BookInfo.objects.filter(id__in=[1,3,5])

>比較查詢 gt lt(less than) gte(equal) lte

BookInfo.objects.filter(id__gte=3)

>日期查詢

BookInfo.objects.filter(bpub_date__year = 1980)

BookInfo.objects.filter(bpub_date__gt = date(1980,1,1))

四、exclude()返回不滿足條件的數(shù)據(jù)

BookInfo.objects.exclude(id=3)

五 F對象

作用:用于類屬性之間的比較條件。

用法:

1:導(dǎo)入 from django.db.models import F

2 :舉例 BookInfo.objects.filter(bread_gt = F(’bcomment’) (查詢閱讀量大于評論量的圖書)

3: 舉例 BookInfo.objects.filter(bread__gt=F(‘bcomment’)*2) (查詢閱讀量等于2倍評論量的圖書)

六 Q對象

作用:用于查詢時(shí)的邏輯條件。可以對 Q 對象進(jìn)行&|~操作。

用法:

1:導(dǎo)入 from django.db.models import Q

2: 舉例:

BookInfo.objects.filter(id__gt=3,bread__gt=30) 和 Book.objects.filter(Q(id__gt=3)&Q(bread__gt=3))

3:舉例:

BookInfo.objects.filter(Q(id__gt=3) | Q(bread__gt=30))

七 order_by 返回QuerySet

作用:對查詢結(jié)果進(jìn)行排序。

1:舉例 BookInfo.object.all().order_by('id')[正序]

2:舉例 BookInfo.object.all().order_by('-id')[倒序]

3:舉例:BookInfo.objects.filter(id__gt=3).order_by(’-bread’)

以上這篇django 利用Q對象與F對象進(jìn)行查詢的實(shí)現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美精品观看| 麻豆精品新av中文字幕| 日韩成人精品一区| 久久精品免费看| 精品国产美女a久久9999| 久久精品色播| 老牛影视精品| 久久裸体视频| 精品欧美久久| 先锋影音国产一区| 亚洲精品乱码久久久久久蜜桃麻豆| 男人的天堂亚洲一区| 四虎精品一区二区免费| 欧美另类中文字幕| 国产亚洲欧美日韩在线观看一区二区| 欧美日本不卡高清| 荡女精品导航| 国内揄拍国内精品久久| 日本少妇一区| 国产午夜精品一区二区三区欧美| 亚洲区欧美区| 欧美激情一区| 丝袜av一区| 亚洲永久字幕| 97成人在线| 91亚洲国产| 国产亚洲高清视频| 国产精品日韩精品在线播放| 色偷偷偷在线视频播放| 亚洲激情婷婷| 日本午夜精品一区二区三区电影| 美女久久久久久| 日韩美女一区二区三区在线观看| 欧美在线影院| 欧美视频精品全部免费观看| 国产美女高潮在线| 久久国产精品99国产| 国产精品一国产精品k频道56| www.51av欧美视频| 免费在线观看日韩欧美| 免费日韩成人| 黄色在线一区| 国产精东传媒成人av电影| 一本大道色婷婷在线| 国产手机视频一区二区 | 日本强好片久久久久久aaa| 国产91在线精品| 午夜在线视频观看日韩17c| 国产精品a级| 91成人精品| 国产精品国码视频| 蜜桃视频欧美| 国产日韩在线观看视频| 久久在线免费| 香蕉久久久久久久av网站| 精品一区二区三区中文字幕在线| 99国产一区| 精品美女在线视频| 五月精品视频| 久久香蕉精品香蕉| 丝袜美腿一区二区三区| 国内精品伊人| 亚洲精品伊人| 欧美日韩第一| 国产精品久久久免费| 婷婷综合激情| 四季av一区二区凹凸精品| 亚洲精品欧美| 亚洲精品中文字幕乱码| 日产精品一区二区| 青青国产91久久久久久| 亚洲成人免费| 国产一区调教| 亚洲欧美网站在线观看| 色婷婷精品视频| 国产精品theporn| 蜜臀a∨国产成人精品| 亚洲成a人片| 麻豆精品视频在线| 日韩区欧美区| 噜噜噜久久亚洲精品国产品小说| 国产中文在线播放| 国产精品伊人| 中文字幕成人| 99视频精品| 色婷婷久久久| 精品国产aⅴ| 国产日产一区| 蜜桃视频免费观看一区| 午夜日韩在线| 色婷婷狠狠五月综合天色拍| 久久久久九九精品影院| 国产日韩一区二区三区在线播放| 蜜臀av亚洲一区中文字幕| 亚洲调教视频在线观看| 日韩欧美三区| 亚洲欧洲免费| 中文字幕日本一区二区| 男人天堂欧美日韩| 亚洲成人日韩| 欧美~级网站不卡| 国产一区二区三区国产精品| 国产亚洲精aa在线看| 免费美女久久99| 在线视频日韩| 亚洲欧洲一区| 最新亚洲激情| 亚洲一区久久| 国产精品三上| 在线综合亚洲| 在线视频精品| 视频一区视频二区在线观看| 一区在线免费| 合欧美一区二区三区| 欧美 日韩 国产精品免费观看| 久久美女性网| 91精品成人| 免费久久99精品国产自在现线| 国产一区亚洲| 一区在线观看| 视频一区二区三区中文字幕| 亚洲免费观看| 美女黄网久久| 日韩在线播放一区二区| 视频一区在线播放| 日本亚洲欧美天堂免费| 日韩精品三区四区| 国产亚洲欧美日韩精品一区二区三区 | 精品三级久久| 国户精品久久久久久久久久久不卡| 99久久九九| 久久免费大视频| 好吊日精品视频| 美女久久一区| 日韩美女精品| 国产日本久久| 精品一区二区三区在线观看视频 | 99在线|亚洲一区二区| 欧美日韩免费观看一区=区三区 | 欧美综合精品| 麻豆精品在线| 深夜福利视频一区二区| 日韩欧美精品一区| 欧美1区2区3区| 在线一区二区三区视频| 日韩免费在线| 亚洲欧美成人综合| 日韩高清在线观看一区二区| 7m精品国产导航在线| 久久av免费| www.九色在线| 亚洲激情婷婷| 欧美午夜三级| 国产传媒在线| 亚洲婷婷在线| 日韩精品一区二区三区中文字幕| 国产精品分类| 99tv成人| 日韩毛片网站| 精品国产成人| 亚洲精品小说| 久久影视三级福利片| 美女视频黄久久| 国产精品高潮呻吟久久久久| 国内精品美女在线观看| 亚洲一级影院| 蜜臀va亚洲va欧美va天堂| 国产精品调教视频| 精品日韩视频| 好吊一区二区三区| 麻豆精品av| 国产麻豆一区| 三级精品视频| 日本在线成人| 日韩伦理福利| 三级欧美韩日大片在线看| 国产毛片一区二区三区| 亚洲不卡av不卡一区二区| 久久精品亚洲人成影院| 亚洲一区二区三区在线免费| 麻豆中文一区二区| 久久性天堂网| 精品欧美日韩精品| 亚洲自拍另类| 风间由美中文字幕在线看视频国产欧美| 激情综合在线| 国产伦精品一区二区三区在线播放| a日韩av网址| 日韩高清在线不卡| 亚洲v在线看| 国产极品嫩模在线观看91精品| 日韩视频一区二区三区在线播放免费观看| 欧美日韩一区二区三区四区在线观看| 亚洲免费福利| 亚洲精品影院在线观看| 久久高清免费| 国产乱人伦丫前精品视频| 欧美特黄一区| 亚洲风情在线资源| 国产美女亚洲精品7777|