PostgreSQL Приклад функції SUBSTRING() із регулярним виразом
⚡ Розумний підсумок
PostgreSQL ПІДСТРІНКА extracts повертає частину рядка, використовуючи необов'язкову початкову позицію та довжину, а також зіставляє текст з регулярним виразом POSIX для вилучення шаблонів, таких як числа або коди.

Що таке PostgreSQL Підрядок?
Команда PostgreSQL Функція підрядка допомагає вам extract та повертає частину рядка. Замість повернення цілого рядка, він повертає лише його частину, що корисно для обрізання кодів та читання полів фіксованої ширини.
синтаксис
Команда PostgreSQL функція substring має такий синтаксис:
substring( string [from starting_position] [for length] )
Параметри
З функцією substring використовуються такі параметри:
| рядок | Вихідний рядок, тип даних якого varchar, char, string тощо. |
| початкова_позиція | Необов'язковий параметр. Він позначає місце, де знаходиться ексtracРозпочнеться запис рядка. Якщо пропустити цей параметр, тодіtracВиконання починається з позиції 1, яка є першим символом у рядку. |
| Необов'язковий параметр. Він позначає кількість символів, які потрібно вивести.tracз рядка. Якщо пропустити цей параметр, функція extracts від початкової_позиції до кінця рядка. |
прикладів
У цьому прикладі ми хочемо extracперші 4 символи слова Guru99:
SELECT substring('Guru99' for 4);
Команда поверне наступне:
Ми не вказали початкову позицію, тому колишнійtracВиведення підрядка почалося з позиції 1. Було виключено чотири символиtracted повернути результат вище.
У наступному прикладі показано, як вказати початкову позицію:
SELECT substring('Guru99' from 1 for 4);
Команда поверне наступне:
Ми уточнили, що колишнійtracПідрядок повинен починатися з позиції 1, а 4 символи повинні бутиtracТед.
Давайте прийдемоtract 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, ви можете колишнійtracпідрядок, що відповідає заданому регулярному виразу POSIX. У цьому випадку функція підрядка використовує такий синтаксис:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Ось пояснення вищезазначених параметрів. Рядок – це вихідний рядок, чий тип даних це varchar, char, string тощо. Зразок_відповідності – це шаблон, який використовується для пошуку в рядку.
прикладів
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Команда поверне наступне:
Наш вхідний рядок — Ваш вік — 22 роки. У шаблоні ми шукаємо числовий шаблон; коли він знайдений, функція підрядка extracлише два символи.
Як зіставити підрядки за допомогою 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 бази даних Demo:
Крок 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) Натисніть піктограму «Виконати», щоб виконати запит.
Він повинен повернути наступне:
Завантажте базу даних, яка використовується в цьому посібнику



















