PostgreSQL Функция SUBSTRING() с примером регулярного выражения
Что такое PostgreSQL Подстрока?
PostgreSQL Функция substring помогает вам...tracФункция возвращает часть строки. Вместо того чтобы возвращать всю строку целиком, она возвращает только её часть.
Синтаксис
PostgreSQL Функция подстроки имеет следующий синтаксис:
substring( string [from starting_position] [for length] )
Параметры
| Имя | Описание |
|---|---|
| string | Исходная строка с типом данных varchar, char, string и т. д. |
| Начальная позиция | Это необязательный параметр. Он обозначает место, где происходит экс.tracНачнётся ввод строки. Если этот параметр опустить, то...tracНачало ввода будет отсчитываться с позиции 1, то есть с первого символа в строке. |
| Это необязательный параметр. Он обозначает количество символов, которые необходимо вывести.tracВыведено из строки. Если вы опустите этот параметр, функция выполнитtract от начальной позиции до конца строки. |
Примеры
В этом примере мы хотим показатьtracпервые 4 символа слова Guru99:
SELECT substring('Guru99' for 4);
Команда вернет следующее:
Мы не указали начальную позицию, поэтому бывшаяtracПодстрока начинается с позиции 1. Было использовано 4 символа.tracted вернуть вышеуказанное.
В следующем примере показано, как указать начальную позицию:
SELECT substring('Guru99' from 1 for 4);
Команда вернет следующее:
Мы уточнили, что бывшийtracПодстрока должна начинаться с позиции 1, и из нее должны быть исключены 4 символа.tracТед.
Давайте выйдемtracт 99 из строки Guru99:
SELECT substring('Guru99' from 5);
Команда вернет следующее:
Мы указали начальную позицию равной 5. Поскольку количество символов, которые необходимо вывести,tracТед не был указан, бывшийtracОна дошла до конца струны.
Вот еще один пример:
SELECT substring('Guru99' from 5 for 2);
Команда вернет следующее:
Мы начали эксtracна позиции 5, и 2 символа были исключены.tracТед.
Рассмотрим таблицу книги, приведенную ниже:
Мы хотим получить приблизительное представление о названии каждой книги. Однако мы можем...tracтолько первые 15 символов из столбца «Имя» таблицы:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Команда вернет следующее:
Теперь у нас есть приблизительное представление о названии каждой книги.
Сопоставление подстрок с помощью регулярного выражения SQL
In PostgreSQL, мы можем extracФункция substring использует подстроку, соответствующую заданному регулярному выражению POSIX. В данном случае функция substring используется со следующим синтаксисом:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Вот объяснение вышеуказанных параметров:
Строка — это исходная строка, чья тип данных это varchar, char, string и т. д.
Match_pattern — это шаблон, который будет использоваться для поиска в строке.
Примеры
SELECT
SUBSTRING (
'Your age is 22',
'([0-9]{1,2})'
) as age;
Команда вернет следующее:
Наша входная строка — «Ваш возраст — 22». В шаблоне мы ищем числовой шаблон в нашей строке; если он найден, функция подстроки должна только...tracдва персонажа.
Как сопоставить подстроки с помощью pgAdmin
Теперь посмотрим, как выполняются действия с помощью pgAdmin.
Вышеупомянутые запросы, для которых нам не нужна база данных, можно выполнить непосредственно из окна редактора запросов. Просто сделайте следующее:
Шаг 1) Войдите в свою учетную запись.
Войдите в свою учетную запись pgAdmin.
Шаг 2) В pgAdmin,
Нажмите значок Инструмента запросов.
Откроется окно редактора запросов.
Шаг 3) Введите запрос.
Введите следующий запрос в окне редактора.
SELECT substring('Guru99' for 4);
Шаг 4) Выполнить запрос
Нажмите значок «Выполнить», чтобы выполнить запрос.
Шаг 5) Выполнение запроса завершено.
Он должен вернуть следующее:
Пример 2:
SELECT substring('Guru99' from 1 for 4);
Он должен вернуть следующее:
Вот следующий пример:
SELECT substring('Guru99' from 5);
Он должен вернуть следующее:
Пример 3:
SELECT substring('Guru99' from 5 for 2);
Он должен вернуть следующее:
Теперь давайте запустим пример, используя таблицу Book демонстрационной базы данных:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2)
- На панели навигации слева нажмите «Базы данных».
- Нажмите Демо.
Шаг 3) Введите запрос в редакторе запросов:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Шаг 4) Нажмите кнопку «Выполнить».
Он должен вернуть следующее:
Теперь у нас есть общее представление о названии каждой книги.
Сопоставление подстрок с помощью регулярного выражения SQL
Чтобы сделать то же самое в pgAdmin, выполните следующие действия:
Шаг 1) Войдите в свою учетную запись pgAdmin.
Шаг 2) Нажмите значок Инструмента запросов.
Откроется окно редактора запросов.
Шаг 3) Введите следующий запрос в окне редактора.
SELECT
SUBSTRING (
'Your age is 22',
'([0-9]{1,2})'
) as age;
Шаг 4) Нажмите значок «Выполнить», чтобы выполнить запрос.
Он должен вернуть следующее:
Резюме
- PostgreSQL Функция substring помогает, например,tracвозвращает только часть строки.
- Первый символ строки находится на позиции 1.
- Если количество символов, которое необходимо вывестиtracЕсли значение из строки не указано, функция выполнит действие.tract символов от указанной начальной позиции до конца строки.
- Если количество символов, которое необходимо вывестиtracЕсли указано значение "ted", будет отображено только это количество символов.tracТед.



















