Django クエリに「NULLS LAST」を追加する方法
PostgreSQL でデータを並べ替えるときは、「NULLS LAST」を使用するのが一般的ですLAST」オプションを使用すると、Null 値が結果の最後でソートされるようになります。このオプションは、Django のクエリ API では直接サポートされていません。
ソリューション
nulls_last=True パラメータを Expression.desc() で使用して、null の順序を制御できます。価値観。以下に例を示します。
from django.db.models import F MyModel.objects.all().order_by(F('price').desc(nulls_last=True))
この構文は Django 1.11 以降で利用可能です。
追加情報
ドキュメントでは Expression.asc( ) または、従来の extra() の代わりに適切な nulls_last パラメータを指定した Expression.desc() order_by 構文。
Django 3.1 以降の詳細については、公式ドキュメントを参照してください:
https://docs.djangoproject.com/en/3.1/ref/models/expressions/ #f を使用して null 値を並べ替える
以上がPostgreSQL を使用した Django クエリで NULL 値を最後にソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。