As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Função do TRANSLATE
Para dada expressão, substitui todas as ocorrências dos caracteres especificados pelos substitutos especificados. Os caracteres existentes são mapeados aos caracteres de substituição pelas suas posições nos argumentos characters_to_replace e characters_to_substitute. Se mais caracteres estiverem especificados no argumento characters_to_replace que no argumento characters_to_substitute, os caracteres adicionais do argumento characters_to_replace serão omitidos do valor de retorno.
TRANSLATEé semelhante ao Função do REPLACE e aoREGEXP_ REPLACE função, exceto que REPLACE substitui uma string inteira por outra string e REGEXP _ REPLACE permite pesquisar um padrão de expressão regular em uma string, enquanto TRANSLATE faz várias substituições de um único caractere.
Se qualquer um dos argumentos for nulo, o retorno será NULL.
Sintaxe
TRANSLATE ( expression, characters_to_replace, characters_to_substitute )
Argumentos
- expressão
-
A expressão a ser traduzida.
- characters_to_replace
-
Uma string contendo os caracteres a serem substituídos.
- characters_to_substitute
-
Uma string contendo os caracteres a substituir.
Tipo de retorno
VARCHAR
Exemplos
O seguinte exemplo substitui vários caracteres em uma string:
select translate('mint tea', 'inea', 'osin'); translate ----------- most tin
O seguinte exemplo substitui o sinal (@) por um ponto final para todos os valores em uma coluna:
select email, translate(email, '@', '.') as obfuscated_email from users limit 10; email obfuscated_email ------------------------------------------------------------------------------------------- Etiam.laoreet.libero@sodalesMaurisblandit.edu Etiam.laoreet.libero.sodalesMaurisblandit.edu amet.faucibus.ut@condimentumegetvolutpat.ca amet.faucibus.ut.condimentumegetvolutpat.ca turpis@accumsanlaoreet.org turpis.accumsanlaoreet.org ullamcorper.nisl@Cras.edu ullamcorper.nisl.Cras.edu arcu.Curabitur@senectusetnetus.com arcu.Curabitur.senectusetnetus.com ac@velit.ca ac.velit.ca Aliquam.vulputate.ullamcorper@amalesuada.org Aliquam.vulputate.ullamcorper.amalesuada.org vel.est@velitegestas.edu vel.est.velitegestas.edu dolor.nonummy@ipsumdolorsit.ca dolor.nonummy.ipsumdolorsit.ca et@Nunclaoreet.ca et.Nunclaoreet.ca
O seguinte exemplo substitui espaços por sublinhados e remove pontos finais de todos os valores em uma coluna:
select city, translate(city, ' .', '_') from users where city like 'Sain%' or city like 'St%' group by city order by city; city translate --------------+------------------ Saint Albans Saint_Albans Saint Cloud Saint_Cloud Saint Joseph Saint_Joseph Saint Louis Saint_Louis Saint Paul Saint_Paul St. George St_George St. Marys St_Marys St. Petersburg St_Petersburg Stafford Stafford Stamford Stamford Stanton Stanton Starkville Starkville Statesboro Statesboro Staunton Staunton Steubenville Steubenville Stevens Point Stevens_Point Stillwater Stillwater Stockton Stockton Sturgis Sturgis