sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan skriver du underforespørgsel i From-klausul i django ORM

Det er faktisk ikke muligt at bruge et Window forespørgsel inde i en WHERE klausul. Så brug i stedet en 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')



  1. Hvad bruges en rækkekonstruktør til?

  2. Oracle:'=ANY()' vs. 'IN ()'

  3. SQL Server 2008 -- udfør forespørgsler parallelt

  4. SQLite Bestil efter dato1530019888000