Поделиться через


SUBSTRING (службы SSIS)

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

Синтаксис

SUBSTRING(character_expression, position, length)

Аргументы

  • character_expression
    Символьное выражение, из которого извлекаются символы.

  • position
    Является целым числом, указывающим, где начинается подстрока.

  • length
    Является целым числом, указывающим длину подстроки в виде числа символов.

Типы результата

DT_WSTR

Замечания

SUBSTRING использует однобазовый индекс. Если position равно 1, то подстрока начинается с первым символом в character_expression.

Функция SUBSTRING работает только типом данных DT_WSTR. Аргумент character_expression, который является строковым литералом или столбцом данных, принадлежащих типу DT_STR, неявным образом приводится к типу данных DT_WSTR перед тем, как функция SUBSTRING осуществляет выполнение операции. Прочие типы данных должны быть явно приведены к типу данных DT_WSTR. Дополнительные сведения см. в разделах Типы данных служб Integration Services и Приведение (службы SSIS).

Функция SUBSTRING возвращает нулевой результат при нулевом аргументе.

Переменные и столбцы могут использовать все аргументы выражения.

Аргумент length может превышать длину строки. В этом случае функция возвращает остаток строки.

Примеры

Этот пример возвращает два символа, начинающихся с 4, из строкового литерала. Возвращаемый результат — «ph».

SUBSTRING("elephant",4,2)

Этот пример возвращает остаток строкового литерала, начиная с четвертого символа. Возвращаемый результат — «phant». Превышение аргументом length размера строки не является ошибкой.

SUBSTRING ("elephant",4,50)

Этот пример возвращает первую букву из столбца MiddleName.

SUBSTRING(MiddleName,1,1)

Этот пример использует переменные в аргументах position и length. Если Start равно 1, и Length равно 5, то функция возвращает первые пять символов столбца Name.

SUBSTRING(Name,@Start,@Length)

Этот пример возвращает четыре последних символа переменной PostalCode , начиная с шестого символа.

SUBSTRING (@PostalCode,6,4)

Этот пример возвращает строку с нулевой длиной из строкового литерала.

SUBSTRING ("Redmond",4,0)

См. также

Другие ресурсы