Resumo: neste tutorial, irá aprender sobre a função PostgreSQL COALESCE que devolve o primeiro argumento não-nulo. Você vai aprender como aplicar esta função em Selecionar declaração para lidar com os valores nulos de forma eficaz.
PostgreSQL COALESCE function syntax
The syntax of the COALESCE
function is as follows:
The COALESCE
function accepts an unlimited number of arguments. Retorna o primeiro argumento que não é nulo., Se todos os argumentos são nulos, a função COALESCE
retornará nula.
a função COALESCE
avalia argumentos da esquerda para a direita até encontrar o primeiro argumento não nulo. Todos os argumentos restantes do primeiro argumento não nulo não são avaliados.
COALESCE
função fornece a mesma funcionalidade do NVL
ou IFNULL
função fornecida pelo SQL-padrão. MySQL tem função IFNULL, enquanto Oracle fornece NVL
função.,
Veja os exemplos a seguir:
Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)
muitas vezes usamos o COLAESCE
função para substituir um valor padrão para valores nulos quando nós consultar os dados. Por exemplo, queremos exibir o trecho de um post no blog, se o trecho não for fornecido, podemos usar os primeiros 150 caracteres do conteúdo do post., Para conseguir isso, podemos usar o COALESCE
funciona da seguinte forma:
Code language: SQL (Structured Query Language) (sql)
PostgreSQL ADESÃO exemplo
Vamos dar uma olhada em um exemplo de uso COALESCE
função. Primeiro, vamos criar uma tabela denominada itens usando a instrução CREATE TABLE da seguinte forma:
Code language: SQL (Structured Query Language) (sql)
Existem quatro campos items
tabela:
- id: a chave primária que identifica o item na tabela de itens.produto: a denominação do produto.preço: o preço do produto.,desconto: o desconto do produto.
em Segundo lugar, vamos inserir alguns registros na tabela de itens usando a instrução INSERT da seguinte forma:
em Terceiro lugar, consultar o líquido preços dos produtos, utilizando a seguinte fórmula:
Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)
Se você olhar para a quarta linha, você irá notar que o preço líquido do produto D
é nulo que não parece correto., A questão é o desconto do produto D
é nulo, portanto, quando tomamos o valor nulo para calcular o preço líquido, PostgreSQL retorna nulo.
The get the right price, we need to assum that if the discount is null, it is zero., Em seguida, podemos usar o COALESCE
funciona da seguinte maneira:
Code language: SQL (Structured Query Language) (sql)
Agora, o preço líquido do produto D
é 500
porque usamos a zero em vez de valor nulo quando calculamos o preço líquido.
além de usar a função COALESCE
, você pode usar a expressão de caso para lidar com os valores nulos neste caso. Veja a seguinte consulta que usa a expressão CASE
para alcançar o mesmo resultado acima.,
Code language: SQL (Structured Query Language) (sql)
na consulta acima dizemos que se o desconto é nulo então use zero (0) caso contrário use o valor de desconto para a expressão que calcula o preço líquido.
em termos de desempenho, COALESCE
função e expressão de caso são os mesmos. Nós preferimos COALESCE
function than CASE
expression because COALESCE
function makes the query shorter and easier to read.
neste tutorial, você aprendeu a usar a função COALESCE
para substituir valores nulos na consulta.,
- este tutorial foi útil ?
- YesNo
Leave a Reply