F查询与Q查询 每次提到可能只是感觉在脑子里有听到过但从来不知道具体是什么
F查询 第一对于是数字类型字段可以整体增加或者减少
from django.db.models import F ret1 = models.Product.objects.filter(maichu__gt=F('kucun)) print(ret1) models.Product.objects.update(price=F('price')+50) #可以理解为F可以取字段里的数字 #F可以取出字段里的字符 from django.db.models.functions import Concat from django.db.models import Value ret = models.Product.objects.update(name=Concat(F('name'),Value('新款')))
Q查询 即 filter查询一般用,隔开表示是与的关系,如果查询或 或者 非关系的列表数据则需要引出Q
from djang.db.models import Q 查询卖出数大于100的或者价格小于100的 models.Product.objects.filter(Q(maichu__gt=100)|Q(price__lt=100)))