Como substituir parte de um texto dentro de uma coluna no SQL?

A função REPLACE() no SQL permite substituir trechos de texto dentro de uma coluna, útil para corrigir informações e padronizar dados.

Como substituir parte de um texto dentro de uma coluna no SQL?

A função REPLACE() no SQL é utilizada para substituir parte de um texto dentro de uma coluna. Essa função é útil para correções em massa e padronização de dados.

Exemplo básico de REPLACE

Se quisermos substituir todas as ocorrências da palavra "Rua" por "Av." na coluna endereco:

SELECT REPLACE(endereco, 'Rua', 'Av.') AS endereco_corrigido FROM clientes;

Isso altera todas as ocorrências de "Rua" para "Av." nos registros exibidos.

Atualizando registros com REPLACE

Podemos aplicar REPLACE() em um UPDATE para modificar permanentemente os dados na tabela:

UPDATE clientes SET endereco = REPLACE(endereco, 'Rua', 'Avenida') WHERE endereco LIKE 'Rua%';

Essa consulta altera os registros da tabela clientes, substituindo "Rua" por "Avenida" em endereços que comecem com "Rua".

Substituindo trechos dentro de identificadores

Se tivermos um conjunto de códigos de produto formatados como "PRD-12345" e quisermos remover o prefixo "PRD-":

SELECT REPLACE(codigo, 'PRD-', '') AS codigo_limpo FROM produtos;

Isso retorna apenas a numeração do código, sem o prefixo.

Cuidados ao usar REPLACE

  • O REPLACE diferencia maiúsculas e minúsculas, então verifique o padrão dos dados antes de aplicá-lo.
  • Ele substitui todas as ocorrências encontradas, então revise antes de fazer um UPDATE em massa.
  • Se precisar de substituições mais avançadas, considere o uso de expressões regulares em bancos que suportam funções como REGEXP_REPLACE() no MySQL e PostgreSQL.

A substituição de partes de texto no SQL é uma técnica útil para manter a integridade e padronização dos dados em bancos de dados grandes. Em cadastros de clientes, por exemplo, pode ser necessário corrigir abreviações incorretas ou substituir padrões de formatação. O uso do REPLACE() facilita essas alterações sem necessidade de exportação para manipulação manual. No entanto, quando se trata de substituições complexas, expressões regulares podem ser mais eficientes para detectar e corrigir padrões inconsistentes.

Algumas aplicações:

  • Correção de erros de digitação em nomes e endereços
  • Remoção ou substituição de prefixos e sufixos em identificadores
  • Padronização de formatação em registros de texto
  • Alteração de nomenclaturas obsoletas em sistemas legados
  • Substituição de caracteres especiais em importação de dados

Dicas para quem está começando

  • Use REPLACE(coluna, 'antigo', 'novo') para substituir textos específicos
  • Antes de executar um UPDATE, sempre teste o SELECT para verificar o impacto
  • Se precisar de substituições mais avançadas, pesquise sobre REGEXP_REPLACE()
  • Lembre-se de que REPLACE() é case-sensitive, então atente-se ao padrão dos textos
  • Para grandes volumes de dados, otimizar índices pode melhorar a performance das substituições

Contribuições de Carla Nunes

Compartilhe este tutorial: Como substituir parte de um texto dentro de uma coluna no SQL?

Compartilhe este tutorial

Continue aprendendo:

Como extrair parte de um texto em um campo SQL?

As funções SUBSTRING, LEFT e RIGHT no SQL permitem extrair partes específicas de um texto armazenado em uma coluna.

Tutorial anterior

Como converter uma data para outro formato no SQL?

As funções FORMAT(), TO_CHAR() e DATE_FORMAT() permitem converter datas para diferentes formatos no SQL, tornando-as mais legíveis e organizadas.

Próximo tutorial