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