に最終更新
TRIM
説明
TRIM 関数は、文字列の両端に連続する空白、または指定した文字列を取り除きます。第二引数を省略すると、先頭と末尾の空白を取り除きます。指定した場合は、その文字列全体を両端から取り除きます。
構文
TRIM(<str>[, <rhs>])
パラメータ
| パラメータ | 説明 |
|---|---|
<str> | 処理する文字列。型:VARCHAR |
<rhs> | 省略可。両端から取り除く文字列。型:VARCHAR |
戻り値
VARCHAR 型の値を返します。
特殊なケース:
- いずれかの引数が NULL の場合、NULL を返します
- rhs を指定しない場合、先頭と末尾の空白を取り除きます
- rhs を指定した場合、rhs の文字列全体を両端から取り除きます(文字単位で取り除くわけではありません)
例
- 先頭と末尾の空白を取り除く
SELECT trim(' ab d ') str;
+------+
| str |
+------+
| ab d |
+------+
- 両端から指定した文字列を取り除く。
trim(str, rhs)は、<rhs>が<str>の先頭または末尾に一致する間、両端から<rhs>を繰り返し取り除きます。
SELECT trim('ababccaab', 'ab') str;
+------+
| str |
+------+
| cca |
+------+
- UTF-8 文字への対応
SELECT trim(' ṭṛì ḍḍumai ');
+------------------------------+
| trim(' ṭṛì ḍḍumai ') |
+------------------------------+
| ṭṛì ḍḍumai |
+------------------------------+
- 一致する接頭辞や接尾辞がない場合は、元の文字列を返す
SELECT trim('Hello World', 'xyz');
+--------------------------------+
| trim('Hello World', 'xyz') |
+--------------------------------+
| Hello World |
+--------------------------------+
- NULL 値の処理
SELECT trim(NULL), trim('Hello', NULL);
+------------+-----------------------+
| trim(NULL) | trim('Hello', NULL) |
+------------+-----------------------+
| NULL | NULL |
+------------+-----------------------+
- 空文字列の処理
SELECT trim(''), trim('abc', '');
+----------+------------------+
| trim('') | trim('abc', '') |
+----------+------------------+
| | abc |
+----------+------------------+
- 両端から繰り返し現れるパターンを取り除く
SELECT trim('abcabcabc', 'abc');
+------------------------------+
| trim('abcabcabc', 'abc') |
+------------------------------+
| |
+------------------------------+
- 非対称な削除
SELECT trim('abcHelloabc', 'abc');
+--------------------------------+
| trim('abcHelloabc', 'abc') |
+--------------------------------+
| Hello |
+--------------------------------+
- UTF-8 文字列に UTF-8 のトリムパターンを指定する。先頭の
ṭṛìだけが取り除かれます。末尾はトリムパターンと一致しない(+++)ため、そこでトリムが終了します。
SELECT trim('ṭṛì ḍḍumai+++', 'ṭṛì');
+--------------------------------------------+
| trim('ṭṛì ḍḍumai+++', 'ṭṛì') |
+--------------------------------------------+
| ḍḍumai+++ |
+--------------------------------------------+
キーワード
TRIM