>데이터 베이스 >MySQL 튜토리얼 >PostgreSQL에서 Django 쿼리 결과를 NULLS 마지막으로 정렬하는 방법은 무엇입니까?

PostgreSQL에서 Django 쿼리 결과를 NULLS 마지막으로 정렬하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-30 22:32:11798검색

How to Order Django Query Results with NULLS LAST in PostgreSQL?

Django에서 "NULLS LAST"를 사용하여 쿼리 결과 정렬

PostgreSQL로 작업할 때 모델을 정렬하려는 시나리오가 발생할 수 있습니다. "NULLS LAST"를 사용하여 Null보다 Null이 아닌 값을 우선시하는 결과 option.

시도 및 문제

extra(order_by=('-price', 'NULLS LAST'))를 사용하는 초기 접근 방식에서는 " 키워드 'NULLS LAST'를 다음으로 해결할 수 없습니다. field."

솔루션

원하는 정렬 동작을 달성하려면 Django 1.11에 도입된 다음 솔루션을 활용하세요.

from django.db.models import F
MyModel.objects.all().order_by(F('price').desc(nulls_last=True))

이 구문은 다음을 활용합니다. Django에서 제공하는 F 표현식을 사용하면 사용자 정의 가능한 매개변수로 필드 정렬을 지정할 수 있습니다. desc(nulls_last=True) 인수는 null 값이 정렬된 결과에서 마지막 요소로 처리되도록 보장합니다.

참조

자세한 내용은 공식 버전 1.11 및 3.1용 Django 문서:

  • Django 1.11: https://docs.djangoproject.com/en/dev/releases/1.11/#expression-asc-and-desc-nulls-first-and-nulls-last-parameters
  • Django 3.1: https://docs.djangoproject.com/en/3.1/ref/models/expressions/#using-f-to-sort-null-values

위 내용은 PostgreSQL에서 Django 쿼리 결과를 NULLS 마지막으로 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.