🧚 Ei! O Beekeeper Studio é uma GUI de banco de dados rápida, moderna e open source Baixar
24 de julho de 2025 Por Matthew Rathbone

Lidar bem com valores NULL é um desafio comum em SQL. O MySQL oferece várias funções para tratar NULLs, e uma delas é a função COALESCE. Neste artigo, vamos ver como usar COALESCE no MySQL e entender suas aplicações práticas.

A função COALESCE faz parte do robusto conjunto de funções do MySQL para tratar valores NULL e manipular dados.

O que é COALESCE?

A função COALESCE retorna o primeiro valor não NULL de uma lista. Ela é útil quando você quer garantir que está trabalhando com dados reais, e não com valores desconhecidos.

Sintaxe

COALESCE(val1, val2, ..., valN)
  • val1, val2, …, valN são os valores a serem avaliados.
  • O tipo de retorno será o mesmo do primeiro valor não NULL da lista.

Uso básico de COALESCE

Vamos começar com um exemplo simples para ver como COALESCE funciona:

SELECT COALESCE(NULL, NULL, 'Apples', 'Bananas') AS Result;

Resultado esperado

+--------+
| Result |
+--------+
| Apples |
+--------+

Neste exemplo, COALESCE retorna ‘Apples’ porque é o primeiro valor não NULL.

Tratando NULLs em dados de tabelas

Imagine que você tem uma tabela employees com colunas de contato opcionais:

CREATE TABLE employees (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100),
    phone VARCHAR(15)
);

INSERT INTO employees (name, email, phone) VALUES
('John Doe', 'john@example.com', NULL),
('Jane Smith', NULL, '123-456-7890'),
('Alice Johnson', NULL, NULL);

Consulta com COALESCE

Você quer obter o meio de contato preferido de cada funcionário. Veja como COALESCE pode ajudar:

SELECT 
    name, 
    COALESCE(email, phone, 'No Contact Available') AS contact_method
FROM 
    employees;

Resultado esperado

+---------------+--------------------+
| name          | contact_method     |
+---------------+--------------------+
| John Doe      | john@example.com   |
| Jane Smith    | 123-456-7890       |
| Alice Johnson | No Contact Available |
+---------------+--------------------+

Nesse caso, a consulta verifica primeiro email, depois phone, e usa ‘No Contact Available’ como padrão se ambos forem NULL.

Combinando com outras funções SQL

COALESCE pode ser combinada com outras funções para transformar dados de forma mais robusta. Veja o exemplo a seguir, que usa IFNULL junto com COALESCE:

SELECT 
    id,
    name,
    COALESCE(email, phone, 'No Contact') AS contact,
    IFNULL(phone, 'N/A') AS phone_number
FROM 
    employees;

Resultado esperado

+----+---------------+--------------------+-------------+
| id | name          | contact            | phone_number|
+----+---------------+--------------------+-------------+
| 1  | John Doe      | john@example.com   | N/A         |
| 2  | Jane Smith    | 123-456-7890       | 123-456-7890|
| 3  | Alice Johnson | No Contact         | N/A         |
+----+---------------+--------------------+-------------+

Aqui, COALESCE determina o melhor meio de contato, enquanto IFNULL fornece um valor padrão especificamente para a coluna phone_number.

Conclusão

Usar COALESCE no MySQL é uma forma poderosa de tratar valores NULL, garantindo que suas consultas produzam resultados significativos mesmo quando faltam dados. Ela oferece flexibilidade para selecionar o primeiro valor não NULL entre colunas, ajudando a manter a integridade e a usabilidade dos dados.

Para tópicos mais avançados de MySQL, confira nossos guias sobre Full Outer Join no MySQL e técnicas de subtração no MySQL. Aprenda a aproveitar as funções SQL para criar aplicações robustas e análises de dados mais esclarecedoras.

Se você trabalha com consultas MySQL complexas, o Beekeeper Studio oferece uma interface intuitiva para testar e depurar suas expressões COALESCE com resultados em tempo real.

Beekeeper Studio é um cliente de banco de dados gratuito e open source

A melhor ferramenta de consultas e edição de SQL que já usei. Tem tudo o que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit

O Beekeeper Studio é rápido, intuitivo e fácil de usar. Ele suporta vários bancos de dados e funciona muito bem no Windows, Mac e Linux.

A versão do Beekeeper para Linux tem 100% dos recursos, sem atalhos e sem concessões.

O que os usuários dizem sobre o Beekeeper Studio

★★★★★
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e deixa o trabalho com bancos de dados agradável de novo."
— Alex K., desenvolvedor de banco de dados
★★★★★
"Já testei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."
— Sarah M., engenheira full stack

Pronto para melhorar seu fluxo de trabalho com SQL?

download Baixe grátis