Печать      Открыть версию интерактивной справки в формате PDF


Предыдущий раздел

Следующий раздел

Строковые функции

Строковые функции выполняют различные символьные преобразования и работают с символьными строками.

ASCII

Преобразует односимвольную строку в соответствующий код ASCII в диапазоне от 0 до 255.

Синтаксис:

ASCII (character_expression)

где:

character_expression

Любое выражение, которое преобразуется в символ ASCII.

Если символьное выражение преобразуется в несколько символов, возвращается код ASCII, соответствующий первому символу в выражении.

BIT_LENGTH

Возвращается длина указанной строки в битах. Каждый символ Unicode имеет длину 2 байта, т. е. равную 16 битам.

Синтаксис:

BIT_LENGTH (character_expression)

где:

character_expression

Любое выражение, которое преобразуется в символьную строку.

CHAR

Преобразует числовое значение от 0 до 255 в символьное значение, соответствующее коду ASCII.

Синтаксис:

CHAR (n_expression)

где:

n_expression

Любое выражение, которое преобразуется в числовое значение от 0 до 255.

CHAR_LENGTH

Возвращает длину указанной строки (число символов). При подсчете длины строки не учитываются начальные и конечные пробелы.

Синтаксис:

CHAR_LENGTH (character_expression)

где:

character_expression

Любое выражение, которое преобразуется в числовое значение от 0 до 255.

CONCAT

Имеются две формы этой функции. Первая форма служит для конкатенации (сцепления) двух символьных строк. Вторая форма использует символ конкатенации символьных строк для конкатенации более двух символьных строк.

Форма 1, синтаксис:

CONCAT (character_expression1, character_expression2)

где:

character_expression

Выражения, преобразуемые в символьные строки

Форма 2, синтаксис:

string_expression1 || string_expression2 || ... string_expressionxx

где:

string_expression

Выражения, преобразуемые в символьные строки и разделенные оператором конкатенации символьных строк || (две вертикальных черты). Сначала выполняется конкатенация первой строки со второй, в результате чего формируется промежуточная строка, с которой выполняется конкатенация следующей строки и т. д.

Пример.

Субъект."Имя субъекта" ||"-"|| Субъект."Местоположение субъекта"

Результаты выглядят следующим образом:

Механизм арендной платы - Главное управление

INSERT

Вставка указанной символьной строки в определенное местоположение другой символьной строки с заменой указанного числа символов в целевой строке.

Синтаксис:

INSERT(character_expression1, n, m, character_expression2)

где:

character_expression1

Любое выражение, преобразуемое в символьную строку. Это строка, в которую выполняется вставка.

character_expression2

Любое выражение, преобразуемое в символьную строку. Это строка, которая вставляется.

n

Любое положительное целое число, представляющее позицию (число символов от начала первой строки), в которую вставляется часть второй строки.

m

Любое положительное целое число, представляющее число символов в первой строке, которое заменяется второй строкой.

LEFT

Возвращает указанное число символов с левой стороны строки.

Синтаксис:

LEFT(character_expression, n)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.

n

Любое положительное целое число, представляющее число символов с левой стороны строки, которые возвращаются.

LENGTH

Возвращается длина (число символов) указанной строки. При подсчете длины не учитываются конечные пробелы.

Синтаксис:

LENGTH(character_expression)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.

LOCATE

Возвращает числовое значение, определяющее позицию одной строки в другой строке. Если строка не найдена, функция LOCATE возвращает значение 0. Если требуется указать начальную позицию для поиска, используйте функцию LOCATEN.

Синтаксис:

LOCATE(character_expression1, character_expression2)

где:

character_expression1

Любое выражение, преобразуемое в символьную строку. Это выражение, которое требуется найти в символьном выражении.

character_expression2

Любое выражение, преобразуемое в символьную строку. Это выражение, в котором выполняется поиск.

LOCATEN

Возвращает числовое значение, определяющее позицию одной строки в другой строке. Эта функция идентична функции LOCATE за исключением того, что поиск начинается с позиции, указанной целочисленным аргументом. Если строка не найдена, функция LOCATEN возвращает значение 0. Возвращаемое числовое значение, определяющее позицию, подсчитывается исходя из того, что первый символ в строке занимает позицию 1 независимо от значения целочисленного аргумента.

Синтаксис:

LOCATEN (character_expression1, character_expression2, n)

где:

character_expression1

Любое выражение, преобразуемое в символьную строку. Это строка, которую нужно найти.

character_expression2

Любое выражение, преобразуемое в символьную строку. Это строка, в которой выполняется поиск.

n

Любое положительное ненулевое целое число, представляющее начальную позицию, с которой выполняется поиск выражения.

LOWER

Преобразует символьную строку в нижний регистр.

Синтаксис:

LOWER (character_expression)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.

OCTET_LENGTH

Возвращает число битов в 8-битовых единицах (число байтов) указанной строки.

Синтаксис:

OCTET_LENGTH (character_expression)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.

POSITION

Возвращает числовое значение, определяющее позицию одной строки в другой строке. Если строка не найдена, функция возвращает значение 0.

Синтаксис:

POSITION(character_expression1 IN character_expression2)

где:

character_expression1

Любое выражение, преобразуемое в символьную строку. Это строка, которую нужно найти.

character_expression2

Любое выражение, преобразуемое в символьную строку. Это строка, в которой выполняется поиск.

REPEAT

Повторяет указанное выражение n раз, где n - положительное целое число.

Синтаксис:

REPEAT(character_expression, n)

REPLACE

Заменяет указанные символы в строке другими указанными символами.

Синтаксис:

REPLACE(character_expression, change_expression, replace_with_expression)

где:

character_expression

Любое выражение, преобразуемое в символьную строку. В этой строке должны быть заменены символы.

change_expression

Любое выражение, преобразуемое в символьную строку. Указывает символы в первой строке, которые требуется заменить.

replace_with_expression

Любое выражение, преобразуемое в символьную строку. Указывает заменяющие символы, используемые для замены символов в первой строке.

RIGHT

Возвращает указанное число символов с правой стороны строки.

Синтаксис:

RIGHT(character_expression, n)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.

n

Любое положительное целое число, представляющее число символов с правой стороны первой строки, которые возвращаются.

SPACE

Вставляет пробелы.

Синтаксис:

SPACE (integer)

где:

integer

Любое выражение, преобразуемое в символьную строку.

SUBSTRING

Создает новую строку, начинающуюся с фиксированного числа символов в исходной строке.

Синтаксис:

SUBSTRING (character_expression FROM starting_position)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.

starting_position

Положительное целое число, указывающее начальную позицию в первой символьной строке.

Пример.

SUBSTRING ("ABCDEF" FROM 3)

В результате:

CDEF

TRIM

Удаляет указанные начальные и/или конечные символы из символьной строки.

Синтаксис:

TRIM (type "character" FROM character_expression)

где:

type

LEADING

TRAILING

BOTH

Удаляет указанные начальные символы из символьной строки.

Удаляет указанные конечные символы из символьной строки.

Удаляет указанные символы (и начальные, и конечные) из символьной строки.

character

Любой одиночный символ. Если в спецификации отсутствует символьная часть или одинарные кавычки, по умолчанию используется пробел.

character_expression

Любое выражение, преобразуемое в символьную строку.

ПРИМЕЧАНИЕ. Синтаксис TRIM (character_expression) также является допустимым. В этом случае удаляются все начальные и конечные пробелы.

UPPER

Преобразует символьную строку в верхний регистр.

Синтаксис:

UPPER (character_expression)

где:

character_expression

Любое выражение, преобразуемое в символьную строку.


Опубликовано в Сентябрь 2017 Copyright © Oracle, 2005, 2017 гг. Все права защищены.Legal Notices.