Heim >Datenbank >MySQL-Tutorial >Wie sortiere ich Datenbankeinträge mit NULLS LAST in Django?

Wie sortiere ich Datenbankeinträge mit NULLS LAST in Django?

Susan Sarandon
Susan SarandonOriginal
2024-12-28 15:27:26689Durchsuche

How to Sort Database Records with NULLS LAST in Django?

Django: Implementierung der Sortierung „NULLS LAST“

Beim Sortieren von Datenbankdatensätzen mit PostgreSQL kann es erforderlich sein, das Sortierverhalten von anzugeben Nullwerte. PostgreSQL bietet die Option „NULLS LAST“, um Nullwerte am Ende der sortierten Ergebnisse zu platzieren.

Abfrage mit „NULLS LAST“ in Django

Um dies zu erreichen Django, Sie können die Methoden Expression.asc() oder Expression.desc() verwenden. Allerdings wurde die Option „NULLS LAST“ in Django-Versionen vor 1.11 nicht unterstützt.

Lösung für Django 1.11 und höher

Für Django-Versionen 1.11 und höher: Sie kann den folgenden Code verwenden:

from django.db.models import F

MyModel.objects.all().order_by(F('price').desc(nulls_last=True))

The Der Ausdruck F('price').desc(nulls_last=True) sortiert die Preise in absteigender Reihenfolge und stellt sicher, dass am Ende Nullwerte angezeigt werden.

Referenz

Für weitere Informationen:

  • Django 3.1 Ausdrucksreferenz: [Django Dokumentation](https://docs.djangoproject.com/en/3.1/ref/models/expressions/#using-f-to-sort-null-values)
  • Versionshinweise zu Django 1.11: [Django-Dokumentation ](https://docs.djangoproject.com/en/dev/releases/1.11/)

Das obige ist der detaillierte Inhalt vonWie sortiere ich Datenbankeinträge mit NULLS LAST in Django?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn