- カテゴリ:
文字列とバイナリ関数 (一般)
TRANSLATE¶
文字列中の文字を置換します。具体的には、文字列、置換する文字のセット、および元の文字の代わりに使用する文字を指定すると、 TRANSLATE は指定された置換を実行します。
注意
この関数は言語間で翻訳しません。自然言語間のテキスト翻訳については、 TRANSLATE (SNOWFLAKE.CORTEX) 関数をご参照ください。
構文¶
TRANSLATE( <subject>, <sourceAlphabet>, <targetAlphabet> )
引数¶
subject
翻訳される文字列式です。
subject
の文字がsourceAlphabet
にない場合、その文字は変換されずに結果に追加されます。sourceAlphabet
この関数によって変更されるすべての文字を含む文字列です。各文字は、
targetAlphabet
の対応する文字に変換されるか、結果では省略されます。targetAlphabet
に対応する文字がない場合(つまり、sourceAlphabet
よりも文字数が少ない場合)、結果の文字は省略されます。targetAlphabet
sourceAlphabet
の文字を置き換えるために使用されるすべての文字を含む文字列です。targetAlphabet
がsourceAlphabet
より長い場合、Snowflakeは以下のエラーを報告します。String '(target alphabet)' is too long and would be truncated.
戻り値¶
この関数は VARCHAR型の値を返します。
照合順序の詳細¶
Arguments with collation specifications currently aren't supported. Collation specifications are ignored without returning an error.
例¶
文字 ñ
を n
に変換します。
SELECT TRANSLATE('peña','ñ','n') AS translation;
+-------------+
| TRANSLATION |
|-------------|
| pena |
+-------------+
X
を c
に、 Y
を e
に、 Z
を f
に翻訳し、 ❄
の文字を削除します。
SELECT TRANSLATE('❄a❄bX❄dYZ❄','XYZ❄','cef') AS translation;
+-------------+
| TRANSLATION |
|-------------|
| abcdef |
+-------------+