Por padrão, valores nulos são retornados como uma string vazia no psql. Mas isso pode ser facilmente alterado.
Uma razão pela qual você pode querer mudar isso é evitar que valores nulos sejam confundidos com strings vazias reais.
Você pode alterar isso com o
\pset null 'value'
comando. Exemplo
Segue um exemplo para demonstrar:
\pset null '<null>'
Resultado:
Null display is "<null>".
Agora foi alterado para que os valores nulos retornem
<null>
em vez da string vazia. Aqui está um exemplo de execução de uma consulta que retorna um valor nulo:
SELECT null AS Result;
Resultado:
result -------- <null> (1 row)
Ele retorna o valor que definimos com o
\pset null
comando. Aqui é comparado a uma string vazia:
SELECT
null AS "Null Value",
'' AS "Empty String";
Resultado:
Null Value | Empty String ------------+-------------- <null> | (1 row)
Não há dúvidas sobre qual é o valor nulo e qual é a string vazia.
Vamos definir
\pset null
de volta ao valor padrão para ver como a string vazia pode ser confusa:\pset null ''
SELECT
null AS "Null Value",
'' AS "Empty String";
Veja como fica quando
\pset null
definido para o valor padrão:Null Value | Empty String ------------+-------------- | (1 row)