[sql] NULL 값을 테이블 끝에 정렬

PostgreSQL을 사용 NULL하여 선택한 테이블의 끝까지 필드의 값이있는 행을 정렬하는 방법이 있습니까?

처럼:

SELECT * FROM table ORDER BY somevalue, PUT_NULL_TO_END



답변

우선, NULL 값 기본 오름차순 으로 마지막에 정렬 됩니다. 추가 작업을 할 필요가 없습니다.

이 문제는 내림차순에 적용되며 이는 완벽한 역순이므로 먼저 NULL 값을 정렬합니다. 솔루션 @Mosty 지적 아웃 에 도입 된 PostgreSQL의 8.3 :

ORDER BY somevalue DESC NULLS LAST

대한 PostgreSQL의 8.2 당신이 대체 할 수있는이 표준 SQL 기능이없는 구형 또는 다른 RDBMS :

ORDER BY (somevalue IS NULL), somevalue DESC

FALSE이전 TRUE에 정렬 하므로 위의 예와 같이 NULL 값이 마지막에옵니다.

관련 나중에 답변 :


답변

이것이 트릭을 만들까요?

ORDER BY somevalue DESC NULLS LAST

출처 : http://www.postgresql.org/docs/9.0/static/sql-select.html


답변