¿Hay alguna forma con PostgreSQL para ordenar filas con NULL
valores en campos hasta el final de la tabla seleccionada?
Me gusta:
SELECT * FROM table ORDER BY somevalue, PUT_NULL_TO_END
Respuestas:
En primer lugar, los valores NULL se ordenan en último lugar en orden ascendente predeterminado . No tienes que hacer nada adicional.
El problema se aplica al orden descendente , que es el inverso perfecto y, por lo tanto, ordena los valores NULL primero. La solución que señaló @Mosty se introdujo con PostgreSQL 8.3 :
ORDER BY somevalue DESC NULLS LAST
Para PostgreSQL 8.2 y anteriores u otros RDBMS sin esta característica estándar de SQL, puede sustituir:
ORDER BY (somevalue IS NULL), somevalue DESC
FALSE
ordena antes TRUE
, por lo que los valores NULL ocupan el último lugar, como en el ejemplo anterior.
Respuesta posterior relacionada:
¿Esto hace el truco?
ORDER BY somevalue DESC NULLS LAST
Tomado de: http://www.postgresql.org/docs/9.0/static/sql-select.html