RTRIM_IN
概要
RTRIM_IN関数は、文字列の右側から指定された文字を削除します。文字セットが指定されていない場合、デフォルトで末尾のスペースを削除します。文字セットが指定されている場合、右側から指定されたすべての文字を削除します(セット内での順序に関係なく)。
RTRIM_INの主な特徴は、指定されたセットからの文字の任意の組み合わせを削除することです。一方、RTRIM関数は完全な文字列マッチングに基づいて文字を削除します。
構文
RTRIM_IN(<str>[, <rhs>])
パラメータ
| パラメータ | 説明 |
|---|---|
<str> | 処理対象の文字列。型:VARCHAR |
<rhs> | オプションパラメータ、除去する文字のセット。型:VARCHAR |
戻り値
VARCHAR型を返し、処理された文字列を表します。
特殊なケース:
- strがNULLの場合、NULLを返します
- rhsが指定されない場合、末尾のスペースをすべて除去します
- rhsが指定される場合、rhsに含まれない最初の文字に遭遇するまで、右側からrhsに含まれるすべての文字を除去します
例
- 末尾のスペースを除去
SELECT rtrim_in('ab d ') str;
+------+
| str |
+------+
| ab d |
+------+
- 指定された文字セットを削除
SELECT rtrim_in('ababccaab', 'ab') str;
+---------+
| str |
+---------+
| ababcc |
+---------+
- RTRIM関数との比較
SELECT rtrim_in('ababccaab', 'ab'), rtrim('ababccaab', 'ab');
+-----------------------------+--------------------------+
| rtrim_in('ababccaab', 'ab') | rtrim('ababccaab', 'ab') |
+-----------------------------+--------------------------+
| ababcc | ababcca |
+-----------------------------+--------------------------+
- 文字セットの順序は重要ではありません
SELECT rtrim_in('Helloabc', 'cba');
+-----------------------------+
| rtrim_in('Helloabc', 'cba') |
+-----------------------------+
| Hello |
+-----------------------------+
- UTF-8文字サポート
SELECT rtrim_in('ṭṛì ḍḍumai+++', '+');
+------------------------------------+
| rtrim_in('ṭṛì ḍḍumai+++', '+') |
+------------------------------------+
| ṭṛì ḍḍumai |
+------------------------------------+
- NULL値の処理
SELECT rtrim_in(NULL, 'abc');
+------------------------+
| rtrim_in(NULL, 'abc') |
+------------------------+
| NULL |
+------------------------+
- 空文字の処理
SELECT rtrim_in('', 'abc'), rtrim_in('abc', '');
+---------------------+---------------------+
| rtrim_in('', 'abc') | rtrim_in('abc', '') |
+---------------------+---------------------+
| | abc |
+---------------------+---------------------+
Keywords
RTRIM_IN, RTRIM