दरअसल, Window
. का उपयोग करना संभव नहीं है WHERE
. के अंदर क्वेरी खंड। तो इसके बजाय, Subquery
. का उपयोग करें :
from django.db.models import OuterRef, Subquery
top_salaries = EmpSalary.objects.filter(
depname=OuterRef('depname')
).order_by('-salary')[:3]
result = EmpSalary.objects.filter(
pk__in=Subquery(top_salaries.values('pk'))
).values('depname', 'empno', 'salary', 'enroll_date')