运行 没有 for 的 QuerySet Django
Run QuerySet Django without for
我在 Django 中有一个查询,我想在每个寄存器中应用一个匹配项。
whatever = Whatever.objects.all()
for w in whatever:
contador+=getMycoincidenceswhatever(w)
getMycoincidenceswhatever 是一个函数,我可以在其中搜索与其他 table.
的一些巧合
def getMycoincidenceswhatever(w)
coincidences=Notificationwhatever.objects.filter
(Q(field_whatever__in=w.field)).count()
return coincidences
有没有不用bucle for的方法?问题是这个查询正在减慢我的服务器,因为这个问题。
尝试使用子查询:
from django.db.models import Subquery, Q
Notificationwhatever.objects.filter(
field_whatever__in=Subquery(Whatever.objects.all().values("field"))
).count()
我在 Django 中有一个查询,我想在每个寄存器中应用一个匹配项。
whatever = Whatever.objects.all()
for w in whatever:
contador+=getMycoincidenceswhatever(w)
getMycoincidenceswhatever 是一个函数,我可以在其中搜索与其他 table.
的一些巧合 def getMycoincidenceswhatever(w)
coincidences=Notificationwhatever.objects.filter
(Q(field_whatever__in=w.field)).count()
return coincidences
有没有不用bucle for的方法?问题是这个查询正在减慢我的服务器,因为这个问题。
尝试使用子查询:
from django.db.models import Subquery, Q
Notificationwhatever.objects.filter(
field_whatever__in=Subquery(Whatever.objects.all().values("field"))
).count()