Alterando ordem dos valores NULL utilizando nulls first e nulls last
Existem casos onde não podemos evitar valores nulos nas tabelas do banco de dados e por isso o PostgreSQL nos permite definir como queremos retornar esses valores em nossas consultas informando a ele como preferimos que esses dados NULOS sejam retornados: no inÃcio ou no final.
Mostraremos nesse post como alterar a ordem nos valores nulos, pois como padrão eles vêm ordenados por último, sendo coniderados como “maior valor”.
Utilizando os recursos de nulls first e nulls last(padrão) podemos definir se queremos que os valores NULL sejam considerados menores ou maiores na ordem do resultado.
Exemplo
Em uma simples query com ordenação ASC, os valores NULL por padrão vêm primeiro no resultado:
SELECT * FROM cadastro ORDER BY data_alteracao
No caso acima, teremos o seguinte resultado:
Se em nosso exemplo queséssemos retornar primeiro os valores nulos, tratando-os como de menor valor, bastaria adicionar o comando NULLS FIRST, como no exemplo abaixo:
SELECT * FROM cadastro ORDER BY data_alteracao nulls first
Sendo assim, o resultado seria:

Order by com nulls first
Trata-se de um comando bem simples que em alguns casos me salvou de grandes algoritmos e espero que seja de grande utilidade a todos.
Até mais!
julho 6, 2010
·
Marcelo Santino ·
No Comments
Tags: nulls first, nulls last, ordenação sql, order by · Posted in: PostgreSQL


Leave a Reply