TRIM
説明
TRIM関数は、文字列の両端から連続するスペースまたは指定された文字列を削除するために使用されます。第2パラメータが指定されていない場合、先頭と末尾のスペースが削除されます。指定されている場合、関数は両端から指定された完全な文字列を削除します。
構文
TRIM(<str>[, <rhs>])
パラメータ
| パラメータ | 説明 |
|---|---|
<str> | 処理される文字列。型: VARCHAR |
<rhs> | オプションパラメータ、両端から除去される文字。型: VARCHAR |
戻り値
VARCHAR型の値を返します。
特殊なケース:
- いずれかのパラメータがNULLの場合、NULLが返されます
- rhsが指定されていない場合、先頭と末尾のスペースを除去します
- rhsが指定されている場合、両端から完全なrhs文字列を除去します(文字単位ではありません)
例
- 先頭と末尾のスペースを除去
SELECT trim(' ab d ') str;
+------+
| str |
+------+
| ab d |
+------+
- 両端から指定された文字列を削除する
SELECT trim('ababccaab', 'ab') str;
+---------+
| str |
+---------+
| ababcca |
+---------+
- 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 |
+--------------------------------+
キーワード
TRIM