# SUBSTRING

Извлекает подстроку, начиная с указанной точки внутри заданной строки.

Это псевдоним для функции [`SUBSTR`](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/string/substr.htm).

## Синтаксис

```
SUBSTRING(STRING, START [, LENGTH])
```

## Аргументы

#### STRING

Тип: `string`

Строка, из которой нужно извлечь подстроку.

#### START

Тип: `integer`

Начальный индекс подстроки.

Позиции начинаются с `1`. Отрицательная начальная позиция интерпретируется как относительная к концу строки.

#### LENGTH

Тип: `integer`

(Необязательно) Длина подстроки.

Если опущено, возвращается остальная часть строки после начальной позиции `START`.

## Возвращает

Тип: `string`

Возвращает подстроку из `STRING` длиной `LENGTH` начиная с позиции `START`.

***

## Примеры

| STRING | Начало | Длина | Выходные данные |
| --- | --- | --- | --- |
| Привет, мир | 1 | 5 | Привет |
| Привет, мир! | 0 | 4 | `''` |
| Привет, мир! | -5 | 5 | Мир |
| Привет, мир! | 12 | 4 | `''` |
| Привет, мир! | -12 | 4 | `''` |
| Привет, мир! | 2 | 3 | ell |
| Привет, мир | 3 | -2 | `''` |
| Привет, мир | 2 | 14 | Элло Мир |
| Привет, мир | 2 |  | Привет, мир |
| Привет, мир | -3 | 2 | rl |
| `null` | -3 | 2 | `null` |