PostgreSQL SUBSTRING () з прикладом

Зміст:

Anonim

Що таке підрядок PostgreSQL?

Функція підрядка PostgreSQL допомагає вам витягти та повернути частину рядка. Замість повернення цілого рядка він повертає лише його частину.

У цьому посібнику PostgreSQL ви дізнаєтесь:

  • Що таке підрядок Postgresql?
  • Синтаксис
  • Приклади
  • Узгодження підрядків із регулярним виразом SQL
  • Використання pgAdmin

Синтаксис

Функція підрядка PostgreSQL приймає такий синтаксис:

substring( string [from starting_position] [for length] )

Параметри

Ім'я Опис
рядок Вихідний рядок, типом даних якого є varchar, char, рядок тощо.
початкова_позиція Це необов’язковий параметр. Він позначає місце, де почнеться витяг струни. Якщо цей параметр опустити, витяг розпочнеться з позиції 1, яка є першим символом у рядку.
довжина Це необов’язковий параметр. Він позначає кількість символів, які слід витягти з рядка. Якщо цей параметр опустити, функція буде витягуватись з початкової_позиції до кінця рядка.

Приклади

У цьому прикладі ми хочемо виділити перші 4 символи зі слова Guru99:

SELECT substring('Guru99' for 4);

Команда поверне наступне:

Ми не вказали початкову позицію, тому вилучення підрядка починається з позиції 1. Для повернення вище було виділено 4 символи.

У наступному прикладі показано, як вказати початкову позицію:

SELECT substring('Guru99' from 1 for 4);

Команда поверне наступне:

Ми вказали, що вилучення підрядка повинно починатися з позиції 1, і слід витягти 4 символи.

Вилучимо 99 із рядка Guru99:

SELECT substring('Guru99' from 5);

Команда поверне наступне:

Ми вказали початкову позицію як 5. Оскільки кількість символів, які потрібно витягти, не була вказана, витяг пройшов до кінця рядка.

Ось ще один приклад:

SELECT substring('Guru99' from 5 for 2);

Команда поверне наступне:

Ми розпочали видобуток з позиції 5, і було вилучено 2 символи.

Розглянемо таблицю книг, подану нижче:

Ми хочемо отримати приблизне уявлення про назву кожної книги. Однак ми можемо витягти лише перші 15 символів із стовпця імен таблиці:

SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;

Команда поверне наступне:

Зараз ми приблизно уявляємо назву кожної книги.

Узгодження підрядків із регулярним виразом SQL

У PostgreSQL ми можемо витягти підрядок, що відповідає вказаному регулярному виразу POSIX. У цьому випадку функція підрядка використовується з таким синтаксисом:

SUBSTRING(string FROM matching_pattern)

або

SUBSTRING(string, matching_pattern);

Ось пояснення вищезазначених параметрів:

Рядок - це вихідний рядок, тип даних якого varchar, char, рядок тощо.

Pattern matching_pattern - це шаблон, який буде використовуватися для пошуку в рядку.

Приклади:

SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;

Команда поверне наступне:

Наш вхідний рядок - ваш вік. 22. За зразком ми шукаємо числовий зразок у нашому рядку, коли його буде знайдено, функція підрядка повинна витягувати лише два символи.

Використання pgAdmin

Тепер давайте подивимося, як виконуються дії за допомогою pgAdmin.

Вищезазначені запити, де нам не потрібна база даних, можна виконати безпосередньо з вікна редактора запитів. Просто виконайте наступне:

Крок 1) Увійдіть до свого облікового запису pgAdmin.

Крок 2) Клацніть піктограму Інструмент запитів.

Відкриється вікно редактора запитів.

Крок 3) Введіть наступний запит у вікні редактора.

SELECT substring('Guru99' for 4);

Крок 4) Клацніть піктограму Виконати, щоб виконати запит.

Він повинен повернути наступне:

Приклад 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)

  1. На панелі навігації ліворуч клацніть Бази даних.
  2. Клацніть Демо.

Крок 3) Введіть запит у редакторі запитів:

SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;

Крок 4) Натисніть кнопку Виконати.

Він повинен повернути наступне:

Зараз ми маємо базове уявлення про назву кожної книги.

Узгодження підрядків із регулярним виразом SQL

Щоб зробити те саме на pgAdmin, виконайте наступне:

Крок 1) Увійдіть до свого облікового запису pgAdmin.

Крок 2) Клацніть піктограму Інструмент запитів.

Відкриється вікно редактора запитів.

Крок 3) Введіть наступний запит у вікні редактора.

SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;

Крок 4) Клацніть піктограму Виконати, щоб виконати запит.

Він повинен повернути наступне:

Короткий зміст:

  • Функція PostgreSQL Substring допомагає витягувати та повертати лише частину рядка.
  • Перший символ рядка знаходиться в положенні 1.
  • Якщо кількість символів, які потрібно витягти із рядка, не вказана, функція витягуватиме символи із зазначеної початкової позиції до кінця рядка.
  • Якщо вказано кількість символів, які потрібно витягти, буде вилучено лише таку кількість символів.

Завантажте базу даних, що використовується у цьому посібнику