Функция PostgreSQL SUBSTRING ()
SUBSTRING () функция
Функция подстроки PostgreSQL используется для извлечения строки, содержащей определенное количество символов, из определенной позиции данной строки.
Синтаксис:
подстрока (строка [из <str_pos>] [для <ext_char>])
параметры
название | Описание |
---|---|
строка | Основная строка, из которой должен быть извлечен символ. |
str_pos | Необязательный. Положение строки, откуда будет начинаться извлечение. Если этот параметр не указан, функция подстроки будет начинаться с позиции 1 (которая является первой позицией в строке). |
ext_char | Необязательный. Количество символов для извлечения из строки. Если этот параметр пропущен, функция подстроки вернет всю строку (от начального положения до конца строки). |
Версия PostgreSQL: 9.3
Наглядное представление функции PostgreSQL SUBSTRING ()
Пример: функция PostgreSQL SUBSTRING ()
Следующая инструкция PostgreSQL возвращает 5 символов, начиная с 4-й позиции строки «w3resource», то есть «esour».
Код:
SELECT substring('w3resource' from 4 for 5);
Пример вывода:
подстрока ----------- esour (1 ряд)
Функция PostgreSQL SUBSTRING () с использованием столбца:
Пример таблицы: сотрудники.
Если мы хотим отобразить employee_id, имя и первые 4 символа имени first_name для тех сотрудников, которые принадлежат к департаменту, у которого Department_id меньше 50 из таблицы сотрудников, можно выполнить следующий SQL:
Код:
SELECT employee_id,first_name,
substring(first_name,1,4) "1st 4 characters of first_name"
FROM employees
WHERE department_id<50;
Пример вывода:
employee_id | имя_файла | Первые 4 символа имени ------------- + ------------ + ----------------------- --------- 114 | Ден | логово 115 | Александр | Alex 116 | Шелли | Shel 117 | Сигал | Сига 118 | Парень | парень 119 | Карен | Kare 178 | Кимберели | Kimb 200 | Дженнифер | Дженн 201 | Майкл | Mich 202 | Пэт | похлопывание 203 | Сьюзен | Суза (11 рядов)
Вот еще один пример:
Пример таблицы: сотрудники.
Если мы хотим отобразить employee_id, фамилию и позицию подстроки 'an' в столбце last_name для тех сотрудников, у которых есть подстрока 'an' в их столбце last_name из таблицы employee, можно выполнить следующий SQL:
Код:
SELECT employee_id,last_name,
position('an' in last_name) "Position of 'an'"
FROM employees
WHERE substring(last_name,position('an' in last_name),2)='an';
Пример вывода:
employee_id | фамилия | Положение 'an' ------------- + ------------ + ------------------ 102 | Де Хаан | 6 112 | Урман | 4 123 | Фольман | 6 127 | Ландри | 2 136 | Philtanker | 6 160 | Доран | 4 167 | Банда | 2 178 | Грант | 3 182 | Салливан | 7 184 | Сарчанд | 6 199 | Грант | 3 (11 рядов)
Предыдущая: ПОЗИЦИЯ функция
Далее: функция TRIM
Новый контент: Composer: менеджер зависимостей для PHP , R программирования