SQL Função COALESCE




SQL > Linguagem SQL avançada > Função Coalesce

A função COALESCE na linguagem SQL apresenta a primeira expressão não-NULL entre os seus argumentos.

Passa-se o mesmo com a seguinte instrução CASE:

SELECT CASE ("nome_coluna")
  WHEN "expressão 1 is not NULL" THEN "expressão 1"
  WHEN "expressão 2 is not NULL" THEN "expressão 2"
  ...
  [ELSE "NULL"]
  END
FROM "nome_tabela";

Por exemplo, se tivermos a seguinte tabela,

Tabela Contact_Info
Name Business_Phone Cell_Phone Home_Phone
Jeff 531-2531 622-7813 565-9901
Laura NULL 772-5588 312-4088
Peter NULL NULL 594-7477

e quisermos descobrir a melhor forma de contactar cada pessoa de acordo com as seguintes regras:

1. Se uma pessoa possuir um telefone da empresa, utilizar o número de telefone da empresa.

2. Se uma pessoa não possuir um telefone da empresa e possuir um telemóvel, utilizar o número do telemóvel.

3. Se uma pessoa não possuir um telefone da empresa, nem telemóvel, mas possuir telefone em casa, utilizar o número de telefone de casa.

É possível utilizar a função COALESCE para atingir o objetivo:

SELECT Name, COALESCE (Business_Phone, Cell_Phone, Home_Phone) Contact_Phone
FROM Contact_Info;

Resultado:

Name Contact_Phone
Jeff 531-2531
Laura 772-5588
Peter 594-7477

SQL NULLIF >>



Copyright © 2014   1keydata.com   Todos os direitos reservados.


SQL Avançados
SQL UNION
SQL UNION ALL
SQL INTERSECT
SQL MINUS
SQL Subquery
SQL EXISTS
SQL CASE
SQL NULL
SQL ISNULL
SQL IFNULL
SQL NVL
SQL COALESCE
SQL NULLIF




Mapa do site