Como concatenar colunas de texto no SQL?

A função CONCAT no SQL permite unir o conteúdo de colunas de texto em um único resultado, útil para formatação e exibição de dados.

Como concatenar colunas de texto no SQL?

A concatenação de colunas no SQL é utilizada para unir valores de diferentes colunas em uma única string, sendo útil para exibir nomes completos, endereços formatados e outras informações combinadas.

Usando CONCAT para unir colunas

A função CONCAT() é amplamente usada para juntar colunas de texto:

SELECT CONCAT(nome, ' ', sobrenome) AS nome_completo FROM clientes;

Aqui, as colunas nome e sobrenome são unidas, separadas por um espaço.

Concatenando com separadores

Se precisarmos adicionar um separador específico, podemos usar CONCAT_WS():

SELECT CONCAT_WS(', ', cidade, estado) AS localizacao FROM clientes;

Essa consulta retorna valores como "São Paulo, SP", com uma vírgula e espaço entre os elementos.

Usando o operador || no PostgreSQL e Oracle

Em bancos como PostgreSQL e Oracle, também podemos concatenar textos usando ||:

SELECT nome || ' ' || sobrenome AS nome_completo FROM clientes;

Esse método funciona da mesma forma que CONCAT().

Concatenando valores numéricos e texto

Se uma das colunas for numérica, devemos convertê-la para string:

SELECT CONCAT('Pedido #', CAST(id AS CHAR)) AS numero_pedido FROM pedidos;

Isso garante que números possam ser unidos corretamente a textos.

Cuidados ao concatenar strings

  • Valores NULL podem afetar CONCAT(), resultando em NULL ao invés da junção esperada.
  • Para evitar problemas, podemos substituir NULL por uma string vazia usando IFNULL() no MySQL ou COALESCE() no PostgreSQL:
    SELECT CONCAT(IFNULL(nome, ''), ' ', IFNULL(sobrenome, '')) AS nome_completo FROM clientes;

A concatenação de colunas no SQL é amplamente utilizada para formatar e organizar dados em sistemas de relatórios e exibição. Em um banco de dados de clientes, unir colunas como nome e sobrenome evita a necessidade de manipulação de dados no frontend da aplicação. Além disso, ao formatar endereços ou informações personalizadas, CONCAT() facilita a apresentação estruturada. Em bancos de dados que suportam || como operador de concatenação, a flexibilidade aumenta, permitindo construir consultas dinâmicas com mais facilidade.

Algumas aplicações:

  • Exibição de nomes completos em sistemas de cadastro
  • Formatação de endereços completos em relatórios
  • Criação de códigos de referência a partir de IDs
  • Construção de strings personalizadas para mensagens automáticas
  • Geração de logs estruturados a partir de múltiplos campos

Dicas para quem está começando

  • Use CONCAT() para unir colunas de texto sem precisar modificar os dados
  • Se precisar de separadores entre valores, prefira CONCAT_WS()
  • Para evitar erros com NULL, utilize IFNULL() ou COALESCE()
  • Teste a sintaxe do seu banco de dados – alguns usam || ao invés de CONCAT()
  • Ao concatenar números, converta-os para string antes da junção

Contribuições de Fernando Albuquerque

Compartilhe este tutorial: Como concatenar colunas de texto no SQL?

Compartilhe este tutorial

Continue aprendendo:

Como arredondar valores decimais no SQL?

A função ROUND() no SQL permite arredondar valores decimais para um número específico de casas, útil para formatação e cálculos financeiros.

Tutorial anterior

Como converter um número em string no SQL?

As funções CAST e CONVERT permitem transformar números em strings no SQL, facilitando formatações e concatenações.

Próximo tutorial