__exact=『aaa』 精確等於 'like 『aaa』
__iexact=『aaa』 精確等於 忽略大小寫的like 『aaa』
__contains=『aaa』 查詢內容包含 like 『%aaa%』
__gt 大於
__gte 大於等於
__lt 小於
__lte 小於等於
__in 存在於乙個list範圍之內
__startswith 以…開頭 like 『%aaa』
__istartswith 以…開頭 忽略大小寫 like 『%aaa』
__endswith 以…結束 like 『aaa%』
__iendswith 以…結束 忽略大小寫 like 『aaa%』
__range(start,end) 在…範圍內
__year 日期欄位的年份
__month 日期欄位的月份
__day 日期欄位的日
__isnull=true/false 是否為空
filter(**kwargs)
返回乙個與引數匹配的queryset,相當於等於(=)
exclude(**kwargs)
返回乙個與引數不匹配的queryset,相當於不等於(!=)
model.objects.filter(create_time__year=2019)
等同於sql語句select * from model where create_time_year='2019'
model.objects.filter(
name__startswith='張'
).exclude(
id__gte=188
).filter(
create_time__gte=datetime(2018,10,10)
)
等同於
select * from model where name like '張%' and id>=188 and create_time>'2018-10-10'
queryset1 = model.objects.filter(name__startswith='張')
queryset2 = queryset1.exclude(id__gte=188)
queryset3 = queryset1.filter(create_time__gte=datetime(2018,10,10))
這種方法的好處是可以對所有查詢屬性可以重用。
而且queryset是延遲屬性,只有當使用到資料庫時,才會去訪問資料庫
query_set = model.objects.all()
[e.id for e in query_set]
from django.db.model import q
from datetime import datetime
obj = model.objects.filter(q(question__startswith='who')|q(question__startswith='what'))
等同於:select * from model where question like 'who%' or question like 'what%'
query_set = model.objects.filter(
q(create_time__gte=datetime(2018,10,10)) | q(
create_time__lte=datetime(2019,10,10)),
name__startswith='張'
)
等同於:select * from model where name like '張%' and create_time >= '2018-10-10' and create_time <= '2019-10-10';
亦可寫為:
query_set = model.objects.filter(
name__startswith='張',
q(create_time__range(
datetime(2018,10,10),datetime(2019,10,10)
)))
f物件可以使用模型的a屬性與b屬性進行比較
from django.db.model import f
obj = model.objects.filter(girl_num__gt=f('boy_num'))
f物件支援算術運算
object = model.objects.filter(girl_num__gte=f('boy_num')+20)
f物件的引數如果是datetime/time,可以進行日期的加減運算:
obj = model.objects.filter(create_time__lt=f('create_at')+timedelta(days=5))
2019-08-08 itk中的花式資料切割(二)
上篇切割的特徵是越切越小,這次換個不會變小的方法,當然不同的方法有利有弊,中間取捨,看實際情況。0.先構建乙個與原始資料同等大小的影象,這個是前提條件 略。不清楚的請轉 itk中的基本影象操作 一文 1.沿著z軸按照預設範圍切出方盒子 其實隨便xyz那一邊都一樣 imagetype sizetype...
itk中的花式資料切割(五)
今天繼續研究資料切割,也是對之前四篇切割內容的補充,內容不多,step by step。itk中有乙個類叫做itkcropimagefilter,是itkextractimagefilter的派生方法。先上 看一下基本用法 imagetype sizetype extractsize extract...
花式看超級碗 人工智慧 大資料在碗裡
超級碗 可不是乙個大碗 超級碗 super bowl 是美國國家美式足球聯盟 也稱為國家橄欖球聯盟 的年度冠軍賽,勝者被稱為 世界冠軍 超級碗一般在每年1月最後乙個或2月第乙個星期天舉行,那一天稱為超級碗星期天 super bowl sunday 超級碗是比賽的名稱,其獎盃名稱為文斯 隆巴迪杯 vi...