집 >데이터 베이스 >MySQL 튜토리얼 >PostgreSQL에서 Null을 마지막으로 정렬하고 특정 값을 마지막에서 두 번째로 정렬하는 방법은 무엇입니까?
특수 사례를 사용하여 null 값을 다른 값보다 먼저 정렬하는 방법
문제:
선택적 정렬 필드(sort)를 사용하여 PostgreSQL 테이블을 정렬할 때 어떻게 보장할 수 있습니까? that:
해결책:
다음을 사용하세요. SQL 문:
SELECT * FROM tasks ORDER BY (sort IS NOT DISTINCT FROM -1), sort;
설명:
식(sort IS NOT DISTINCT FROM -1)은 다음과 같이 평가됩니다.
예:
다음 샘플 데이터를 고려하세요.
id | f_id | name | sort ---+------+----------+------- 1 | 1 | zeta | -1 2 | 1 | alpha | 1 3 | 1 | gamma | 3 4 | 1 | beta | 2 5 | 1 | delta | 6 | 1 | epsilon |
쿼리는 다음과 같이 정렬된 결과를 생성합니다.
id | f_id | name | sort ---+------+----------+------- 2 | 1 | alpha | 1 4 | 1 | beta | 2 3 | 1 | gamma | 3 5 | 1 | delta | 6 | 1 | epsilon | 1 | 1 | zeta | -1
위 내용은 PostgreSQL에서 Null을 마지막으로 정렬하고 특정 값을 마지막에서 두 번째로 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!