PostgreSQL SUBSTRING() funkcija s primjerom regularnog izraza
⚡ Pametni sažetak
PostgreSQL SUBSTRING extracts vraća dio niza, koristeći opcionalnu početnu poziciju i duljinu, a također uspoređuje tekst s POSIX regularnim izrazom kako bi izvukla uzorke poput brojeva ili kodova.

Što je PostgreSQL Podniz?
The PostgreSQL Funkcija podniza vam pomaže da extract i vraća dio niza. Umjesto vraćanja cijelog niza, vraća samo njegov dio, što je korisno za skraćivanje kodova i čitanje polja fiksne širine.
Sintaksa
The PostgreSQL funkcija podniza ima sljedeću sintaksu:
substring( string [from starting_position] [for length] )
Parametri
Sljedeći parametri se koriste s funkcijom substring:
| niz | Izvorni niz čiji je tip podataka varchar, char, string itd. |
| početni_položaj | Neobavezni parametar. Označava mjesto gdje se extracIzrada niza će započeti. Ako izostavite ovaj parametar, extracPočetak niza počinje od pozicije 1, što je prvi znak u nizu. |
| dužina | Neobavezni parametar. Označava broj znakova koji će se prikazati.traciz niza. Ako izostavite ovaj parametar, funkcija extracts od početne_pozicije do kraja niza. |
Primjeri
U ovom primjeru želimo objasnititracprva 4 znaka iz riječi Guru99:
SELECT substring('Guru99' for 4);
Naredba će vratiti sljedeće:
Nismo odredili početnu poziciju, pa je bivšitracPočelo je na poziciji 1. Četiri znaka su izostavljenatracpotrebno je vratiti gornji rezultat.
Sljedeći primjer pokazuje kako odrediti početnu poziciju:
SELECT substring('Guru99' from 1 for 4);
Naredba će vratiti sljedeće:
Naveli smo da bivšitracPodniz treba započeti od pozicije 1, a 4 znaka trebaju biti extracted.
Neka nam budetract 99 iz niza Guru99:
SELECT substring('Guru99' from 5);
Naredba će vratiti sljedeće:
Početnu poziciju smo odredili kao 5. Budući da je broj znakova koje treba prikazatitracted nije bio naveden, bivšitraccija je išla do kraja niza.
Evo još jednog primjera:
SELECT substring('Guru99' from 5 for 2);
Naredba će vratiti sljedeće:
Započeli smo bivši/bivšatraccija na poziciji 5, a 2 znaka su bila izostavljenatracted.
Razmotrite donju tablicu knjiga:
Želimo dobiti okvirnu ideju o nazivu svake knjige. Možemo npr.tracsamo prvih 15 znakova iz stupca s imenom u tablici:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Naredba će vratiti sljedeće:
Sada imamo okvirnu ideju o nazivu svake knjige.
Usklađivanje podnizova sa SQL regularnim izrazom
In PostgreSQL, možeš bivšitracpodniz koji odgovara određenom POSIX regularnom izrazu. U ovom slučaju, funkcija podniza koristi sljedeću sintaksu:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Evo objašnjenja gore navedenih parametara. Niz je izvorni niz, čiji tip podataka je varchar, char, string i tako dalje. Matching_pattern je uzorak koji se koristi za pretraživanje u stringu.
Primjeri
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Naredba će vratiti sljedeće:
Naš ulazni niz je Vaša dob je 22. U uzorku tražimo numerički uzorak; kada ga pronađe, funkcija podniza extracsamo dva znaka.
Kako uskladiti podnizove pomoću pgAdmin-a
Sada pogledajmo kako se ove radnje izvode pomoću pgAdmin-a. Upiti koji ne trebaju bazu podataka mogu se izvršiti izravno iz prozora uređivača upita. Samo učinite sljedeće:
Korak 1) Prijavite se na svoj pgAdmin račun.
Korak 2) Na pgAdminu kliknite ikonu Alata za upite.
Otvorit će se prozor uređivača upita.
Korak 3) U prozor editora upišite sljedeći upit.
SELECT substring('Guru99' for 4);
Korak 4) Pritisnite ikonu Izvrši da biste izvršili upit.
Korak 5) Izvršavanje upita je završeno. Trebao bi vratiti sljedeće:
Primjer 2:
SELECT substring('Guru99' from 1 for 4);
Trebao bi vratiti sljedeće:
Evo sljedećeg primjera:
SELECT substring('Guru99' from 5);
Trebao bi vratiti sljedeće:
Primjer 3:
SELECT substring('Guru99' from 5 for 2);
Trebao bi vratiti sljedeće:
Sada pokrenimo primjer pomoću tablice Book Demo baze podataka:
Korak 1) Prijavite se na svoj pgAdmin račun.
Korak 2) Na navigacijskoj traci s lijeve strane kliknite Baze podataka, a zatim kliknite Demo.
Korak 3) Unesite upit u uređivač upita:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Korak 4) Pritisnite gumb Izvrši.
Trebao bi vratiti sljedeće:
Sada imamo osnovnu ideju imena svake knjige.
Usklađivanje podnizova sa SQL regularnim izrazom
Da biste postigli isto na pgAdmin-u, učinite sljedeće:
Korak 1) Prijavite se na svoj pgAdmin račun.
Korak 2) Kliknite ikonu Alata za upite.
Otvorit će se prozor uređivača upita.
Korak 3) U prozor editora upišite sljedeći upit.
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Korak 4) Pritisnite ikonu Izvrši da biste izvršili upit.
Trebao bi vratiti sljedeće:
Preuzmite bazu podataka korištenu u ovom vodiču



















