ПостгреСКЛ СУБСТРИНГ () са примером

Преглед садржаја:

Anonim

Шта је ПостгреСКЛ подниз?

ПостгреСКЛ функција подниза вам помаже да извучете и вратите део низа. Уместо да врати цео низ, он враћа само његов део.

У овом упутству за ПостгреСКЛ научићете:

  • Шта је Постгрескл подниз?
  • Синтакса
  • Примери
  • Подударање поднизова са СКЛ регуларним изразом
  • Коришћење пгАдмин

Синтакса

ПостгреСКЛ функција подниза узима следећу синтаксу:

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

Параметри

Име Опис
низ Изворни низ чији је тип података варцхар, цхар, стринг итд.
почетни положај То је опциони параметар. Означава место где ће почети вађење низа. Ако изоставите овај параметар, издвајање ће започети са положаја 1, што је први знак у низу.
дужина То је опциони параметар. Означава број знакова који се извлаче из низа. Ако изоставите овај параметар, функција ће се издвојити од почетне_позиције до краја низа.

Примери

У овом примеру желимо да издвојимо прва 4 знака из речи Гуру99:

SELECT substring('Guru99' for 4);

Команда ће вратити следеће:

Нисмо навели почетну позицију, па је издвајање подниза почело на позицији 1. Извучена су 4 знака да би се вратило горе наведено.

Следећи пример показује како одредити почетну позицију:

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

Команда ће вратити следеће:

Прецизирали смо да извлачење подниза треба почети од положаја 1, а треба извући 4 знака.

Извуцимо 99 из низа Гуру99:

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;

Команда ће вратити следеће:

Сада имамо оквирну идеју о имену сваке књиге.

Подударање поднизова са СКЛ регуларним изразом

У ПостгреСКЛ-у можемо издвојити подниз који одговара одређеном ПОСИКС регуларном изразу. У овом случају, функција подниза се користи са следећом синтаксом:

SUBSTRING(string FROM matching_pattern)

или

SUBSTRING(string, matching_pattern);

Ево објашњења горњих параметара:

Низ је изворни низ чији је тип података варцхар, цхар, стринг итд.

Узорак_подударања је образац који се користи за претраживање у низу.

Примери:

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

Команда ће вратити следеће:

Наш уносни низ је ваша старост је 22. У обрасцу тражимо нумерички узорак у нашем низу када се то пронађе, функција подниза треба да издвоји само два знака.

Коришћење пгАдмин

Сада да видимо како се радње изводе помоћу пгАдмин-а.

Горе наведени упити где нам није потребна база података могу се извршити директно из прозора уређивача упита. Само урадите следеће:

Корак 1) Пријавите се на свој пгАдмин налог.

Корак 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);

Требало би да врати следеће:

Ајмо сада да покренемо пример користећи табелу Боок базе података Демо:

Корак 1) Пријавите се на свој пгАдмин налог.

Корак 2)

  1. На траци за навигацију са леве стране кликните на Базе података.
  2. Кликните Демо.

Корак 3) Укуцајте упит у уређивачу упита:

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

Корак 4) Кликните на дугме Изврши.

Требало би да врати следеће:

Сада имамо основну идеју о имену сваке књиге.

Подударање поднизова са СКЛ регуларним изразом

Да бисте постигли исто на пгАдмин, урадите следеће:

Корак 1) Пријавите се на свој пгАдмин налог.

Корак 2) Кликните икону Куери Тоол.

Отвориће се прозор уређивача упита.

Корак 3) У прозору уређивача откуцајте следећи упит.

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

Корак 4) Кликните икону Изврши да бисте извршили упит.

Требало би да врати следеће:

Резиме:

  • ПостгреСКЛ функција подниза помаже у издвајању и враћању само дела низа.
  • Први знак низа је на положају 1.
  • Ако број знакова који се извлаче из низа није наведен, функција ће извући знакове из наведеног почетног положаја до краја низа.
  • Ако је наведен број знакова који се извлаче, извући ће се само тај број знакова.

Преузмите базу података кориштену у овом водичу