sql >> Databasteknik >  >> RDS >> PostgreSQL

order_by on Many-to-Many-fältet resulterar i dubbla poster i queryset

Jag tog emot förslag från sfletche om att använda annotate och diskuterade problemet i freenode.nets irc-kanal #django.

Användarna FunkyBob och jtiai kunde hjälpa mig att få det att fungera.

Eftersom det kan vara många möten för varje arbetsorder, när vi ber den att beställa efter möten, kommer den att returnera en rad för varje mötestillfälle eftersom den inte vet vilket möte jag hade för avsikt att den skulle beställa efter.

from django.db.models import Max

WorkOrder.objects.annotate(max_date=Max('appointment__start')).filter(work_order_status="complete").order_by('max_date')

Så vi var på rätt väg, det handlade bara om att få syntaxen korrekt.

Tack för hjälpen sfletche, FunkyBob och jtiai.



  1. Apex 5.0:Visa en förloppsindikator medan databasåtgärd utförs

  2. SQL Server Change Recovery Model

  3. Oracle 11g - Kör PL/SQL-markörer

  4. Söker efter avancerat php/mysql pagineringsskript