Правостороннее удаление символов (RTRIM)
Функция
Удаление заданных символов из строки справа.
Спецификация
Общие правила
-
Из
<строки>удаляются справа символы, указанные в<подстроке>. -
Если
<подстрока>не указана, по умолчанию удаляются пробелы. -
Если
<строка>имеет тип данныхCHAR(1),VARCHAR(1), и удаляется содержащийся в ней символ, то<строка>становится пустой и длина строки станет равной0. -
Все аргументы функции могут быть заданы
<SQL-параметром>, который должен содержать спецификацию типа данных параметра.select rtrim(? (char(20)), ? (char(10))); Тестовая строка 24 24 |Тестовая строка |
Возвращаемое значение
-
<Строка>с удаленными справа указанными символами. -
Тип возвращаемого значения совпадает с типом аргумента.
-
Если аргумент
NULL, результатNULL.
Пример
create or replace table tab1
(c1 char(10), c2 char(10), c3 char(10), c4 char);
insert into tab1 values
(' 123 ', '?123???','456123123', '%');
select c1 || ' *',length( c1 || ' *'), rtrim(c1) || '*',
length( rtrim(c1) || '*') from tab1
union
select c2 || '*', length( c2 || '*'), rtrim(c2, '?' ) || '*',
length(rtrim(c2, '?') || '*') from tab1
union
select c3 || '*', length( c3 || '*'), rtrim(c3, '123') || '*',
length(rtrim(c3, '123') || '*') from tab1
union
select c4 || '*', length(c4 || '*'), rtrim(c4, '%') || '*',
length(rtrim(c4, '%') || '*') from tab1;
| 123 * | 9 | *123 | 6 |
| ?123???* | 8 | ?123* | 5 |
| %* | 2 | * | 1 |
| 456123123* | 10 | 456* | 4 |