Podemos utilizar a função replace para substituir:
- uma ou mais palavras de uma de string;
- um ou mais caracteres de uma string;
REPLACE(COLUNA, DE, PARA)
- COLUNA: coluna da tabela;
- DE: o conteúdo que vamos substituir;
- PARA: o novo conteúdo;
Substituir a abreviatura VW pela palavra Wolkswagen.
Neste exemplo, vamos utilizar a coluna "modelo_veículo" da tabela "tb_veículo". Veja a tabela a seguir:
tb_veiculo |
Para fazer a substituição utilizamos a sentença abaixo:
SELECT
modelo_veiculo,
REPLACE(modelo_veiculo, 'VW', 'Wolkswagen') AS substituicao
FROM tb_veiculo
Após a execução da sentença acima teremos o seguinte resultado:
2º Exemplo
Substituir:
- a abreviatura VW pela palavra Wolkswagen;
- a abreviatura GM pela palavra General Motors;
tb_veiculo |
Para fazer a substituição, além da função, REPLACE vamos utilizar a condição "CASE WHEN" para substituir a sigla de acordo com a situação.
Obs: Caso tenha interesse, veja o artigo: PostgreSql - Exemplo CASE WHEN
Veja a sentença abaixo:
SELECT
modelo_veiculo,
CASE
WHEN (modelo_veiculo LIKE '%VW%')
THEN REPLACE(modelo_veiculo, 'VW', 'Wolkswagen')
WHEN (modelo_veiculo LIKE '%GM%')
THEN REPLACE(modelo_veiculo, 'GM', 'General Motors')
END AS substituicao
FROM tb_veiculo
Após a execução da sentença acima teremos o seguinte resultado:
3 º Exemplo
Substituir o caractere "o" pelo caractere "a" de uma mensagem. Neste exemplo, vamos utilizar a coluna "mensagem" da tabela "tb_mensagem". Veja a tabela a seguir:
tb_mensagem |
Para exibir a substituição utilizamos a sentença abaixo:
SELECT
data,
mensagem,
REPLACE(mensagem, 'o', 'a') AS nova_mensagem
FROM tb_mensagem;
Após a execução da sentença acima teremos o seguinte resultado:
Deixe o seu comentário ou sugestão sobre este artigo.
Gostou? Curta a nossa página.
Como posso fazer a substituição em 2 colunas de uma mesma tabela?
ResponderExcluirOlá, você explica muito bem, parabéns !!!
ResponderExcluirTem como colocar um exemplo de Update com Replace ? Grato