- カテゴリ:
文字列とバイナリ関数 (一般)
RTRIM¶
空白を含む末尾の文字を文字列から削除します。
注釈
文字列内の文字を削除するには、 REPLACE 関数を使用します。
構文¶
RTRIM(<expr> [, <characters> ])
引数¶
expr
削除される文字列式です。
characters
expr
の右側から削除する1つ以上の文字です。デフォルト値は
' '
(単一空白文字)です。文字が指定されていない場合は、空白のみが削除されます。
戻り値¶
この関数は VARCHAR データ型の値または NULL を返します。いずれかの引数が NULL の場合は、 NULL を返します。
使用上の注意¶
characters
で任意の順番で文字を指定できます。characters
での' '
の指定は、他の空白文字(タブ文字や行末文字など)を削除しません。これらの文字を削除するには、明示的に指定します。
characters
を指定する場合は、空白を削除する文字を明示的に指定する必要があります。たとえば、' $.'
は、入力文字列から後続の空白スペース、ドル記号、ピリオドをすべて削除します。
照合順序の詳細¶
オプションの2番目の引数が省略されている場合、または空白のみが含まれている場合は、 照合 がサポートされます。
戻り値の照合指定は、最初の引数の照合指定と同じです。
例¶
文字列から末尾の 0
および .
文字を削除します。
SELECT RTRIM('$125.00', '0.');
+------------------------+
| RTRIM('$125.00', '0.') |
|------------------------|
| $125 |
+------------------------+
残りの例では、以下のテーブルデータを使用します。また、クエリでは文字列を >
と <
で囲むと、空白を視覚化することができます。
CREATE OR REPLACE TABLE test_rtrim_function(column1 VARCHAR);
INSERT INTO test_rtrim_function VALUES ('Trailing Spaces# ');
文字列から末尾の空白を削除します。この例では、2番目の characters
引数を指定していません。なぜなら、デフォルトでは空白だからです。
SELECT CONCAT('>', CONCAT(column1, '<')) AS original_value,
CONCAT('>', CONCAT(RTRIM(column1), '<')) AS trimmed_value
FROM test_rtrim_function;
+----------------------+--------------------+
| ORIGINAL_VALUE | TRIMMED_VALUE |
|----------------------+--------------------|
| >Trailing Spaces# < | >Trailing Spaces#< |
+----------------------+--------------------+
文字列から先頭の空白と #
を削除します。この例では、空白に加えて他の文字も削除するため、2番目の引数 characters
を指定しています。
SELECT CONCAT('>', CONCAT(column1, '<')) AS original_value,
CONCAT('>', CONCAT(RTRIM(column1, '# '), '<')) AS trimmed_value
FROM test_rtrim_function;
+----------------------+-------------------+
| ORIGINAL_VALUE | TRIMMED_VALUE |
|----------------------+-------------------|
| >Trailing Spaces# < | >Trailing Spaces< |
+----------------------+-------------------+