Categorias:

Funções de cadeia de caracteres e binários (General)

TRANSLATE

Substitui caracteres em uma cadeia de caracteres. Especificamente, dada uma cadeia de caracteres, um conjunto de caracteres a ser substituído, e os caracteres a serem substituídos para os caracteres originais, TRANSLATE executa as substituições especificadas.

Atenção

Essa função não é traduzida entre idiomas. Veja a função TRANSLATE (SNOWFLAKE.CORTEX) para traduzir texto entre idiomas naturais.

Sintaxe

TRANSLATE( <subject>, <sourceAlphabet>, <targetAlphabet> )
Copy

Argumentos

subject

Uma expressão de cadeia de caracteres que é traduzida. Se um caractere em subject não estiver em sourceAlphabet, o caractere será adicionado ao resultado sem nenhuma tradução.

sourceAlphabet

Uma cadeia de caracteres com todos os caracteres que são modificados por esta função. Cada caractere é traduzido para o caractere correspondente em targetAlphabet ou omitido no resultado. Um caractere será omitido no resultado se o targetAlphabet não tiver um caractere correspondente (ou seja, tiver menos caracteres do que o sourceAlphabet).

targetAlphabet

Uma cadeia de caracteres com todos os caracteres que são usados para substituir os caracteres do sourceAlphabet.

Se targetAlphabet for maior que sourceAlphabet, o Snowflake relatará o seguinte erro:

String '(target alphabet)' is too long and would be truncated.

Retornos

Esta função retorna um valor do tipo VARCHAR.

Detalhes do agrupamento

Arguments with collation specifications currently aren’t supported. Collation specifications are ignored without returning an error.

Exemplos

Traduza o caractere ñ para n:

SELECT TRANSLATE('peña','ñ','n') AS translation;
Copy
+-------------+
| TRANSLATION |
|-------------|
| pena        |
+-------------+

Traduza X para c, Y para e, Z para f e remova os caracteres :

SELECT TRANSLATE('❄a❄bX❄dYZ❄','XYZ❄','cef') AS translation;
Copy
+-------------+
| TRANSLATION |
|-------------|
| abcdef      |
+-------------+