Последнее обновление
STRRIGHT
Описание
Функция STRRIGHT возвращает указанное количество символов с правого края строки. Длина измеряется в символах UTF8.
Псевдоним
RIGHT
Синтаксис
STRRIGHT(<str>, <len>)
Параметры
| Параметр | Описание |
|---|---|
<str> | Строка, из которой извлекаются символы. Тип: VARCHAR |
<len> | Количество возвращаемых символов. Тип: INT |
Возвращаемое значение
Возвращает значение типа VARCHAR, представляющее извлечённую подстроку.
Особые случаи:
- Возвращает NULL, если хотя бы один аргумент равен NULL
- Если len отрицательно, возвращает подстроку, начинающуюся с символа на позиции abs(len) при отсчёте справа
- Возвращает всю строку, если len превышает длину строки
Примеры
- Простое извлечение символов с правого края
SELECT STRRIGHT('Hello doris', 5), RIGHT('Hello doris', 5);
+----------------------------+------------------------+
| STRRIGHT('Hello doris', 5) | RIGHT('Hello doris', 5) |
+----------------------------+------------------------+
| doris | doris |
+----------------------------+------------------------+
- Извлечение подстрок разной длины
SELECT STRRIGHT('Hello World', 3), STRRIGHT('Hello World', 8);
+-----------------------------+-----------------------------+
| STRRIGHT('Hello World', 3) | STRRIGHT('Hello World', 8) |
+-----------------------------+-----------------------------+
| rld | lo World |
+-----------------------------+-----------------------------+
- Обработка значений NULL
SELECT STRRIGHT(NULL, 5), STRRIGHT('Hello doris', NULL);
+-------------------+-------------------------------+
| STRRIGHT(NULL, 5) | STRRIGHT('Hello doris', NULL) |
+-------------------+-------------------------------+
| NULL | NULL |
+-------------------+-------------------------------+
- Пустая строка и нулевая длина
SELECT STRRIGHT('', 5), STRRIGHT('Hello World', 0);
+-------------------+-----------------------------+
| STRRIGHT('', 5) | STRRIGHT('Hello World', 0) |
+-------------------+-----------------------------+
| | |
+-------------------+-----------------------------+
- Обработка отрицательной длины
SELECT STRRIGHT('Hello doris', -7), STRRIGHT('Hello doris', -5);
+-----------------------------+-----------------------------+
| STRRIGHT('Hello doris', -7) | STRRIGHT('Hello doris', -5) |
+-----------------------------+-----------------------------+
| doris | o doris |
+-----------------------------+-----------------------------+
- Длина превышает длину строки
SELECT STRRIGHT('ABC', 10), STRRIGHT('short', 20);
+---------------------+-----------------------+
| STRRIGHT('ABC', 10) | STRRIGHT('short', 20) |
+---------------------+-----------------------+
| ABC | short |
+---------------------+-----------------------+
- Многобайтовые символы UTF-8
SELECT STRRIGHT('ṭṛì ḍḍumai hello', 5), STRRIGHT('ṭṛì ḍḍumai hello', 11);
+----------------------------------+-----------------------------------+
| STRRIGHT('ṭṛì ḍḍumai hello', 5) | STRRIGHT('ṭṛì ḍḍumai hello', 11) |
+----------------------------------+-----------------------------------+
| hello | ḍumai hello |
+----------------------------------+-----------------------------------+
- Обработка строк с цифрами
SELECT STRRIGHT('123456789', 3), STRRIGHT('ID_987654321', 6);
+----------------------------+-------------------------------+
| STRRIGHT('123456789', 3) | STRRIGHT('ID_987654321', 6) |
+----------------------------+-------------------------------+
| 789 | 654321 |
+----------------------------+-------------------------------+
- Извлечение домена из адреса электронной почты
SELECT STRRIGHT('user@example.com', 11), STRRIGHT('admin@company.org.cn', 14);
+----------------------------------+--------------------------------------+
| STRRIGHT('user@example.com', 11) | STRRIGHT('admin@company.org.cn', 14) |
+----------------------------------+--------------------------------------+
| example.com | company.org.cn |
+----------------------------------+--------------------------------------+
Ключевые слова
STRRIGHT, RIGHT