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