Stvorite podnizove nizova u PostgreSQL-u

Stvorite Podnizove Nizova U Postgresql U



Postoje slučajevi u kojima ćete možda htjeti izvući određeni odjeljak (podniz) iz niza. Moguće je da ste zainteresirani samo za navedeni odjeljak i želite izostaviti drugi dio niza u svom izlazu. Zamislite slučaj u kojem imate puno ime kao što je 'fname lname' kao jedan niz i želite izdvojiti samo 'fname' u svom izlazu. Za to morate koristiti PostgreSQL funkciju podniza. Pripremili smo detaljan vodič koji treba slijediti, uključujući primjere koji će vam pomoći da razumijete kako možete stvoriti podnizove nizova u PostgreSQL-u.

Primjeri o tome kako stvoriti podnizove nizova u PostgreSQL-u

Prvo što moramo provjeriti je sintaksa.

PODSTRING( niz/naziv_stupca, početna_pozicija, duljina)

U zadanoj sintaksi možete navesti niz za koji želite stvoriti podniz ili navesti stupac u svojoj tablici. Zatim morate navesti poziciju u nizu s kojega želite da podniz počinje. Na kraju, odredite duljinu podniza ili krajnji položaj niza. Uzmimo nekoliko primjera da vidimo na djelu.







Primjer 1: Navedite duljinu podniza

Kada imate ciljni niz, možete postaviti koliko bi podniz trebao biti dugačak. Na primjer, ako imate svoj niz kao 'Linuxhint' i želite stvoriti svoj podstring kao 'Linux', izvršite sljedeću naredbu:



SELECT SUBSTRING('Linuxhint' FROM 1 FOR 5) AS korisničko ime;

Koristimo ključnu riječ FROM za određivanje naše početne pozicije i ključnu riječ FOR za određivanje duljine podniza. 'Korisničko ime' je ime koje dajemo našem izlazu.



Izvođenjem naredbe dobivamo sljedeći izlaz. Primijetite kako smo željeni podniz dobili kao izlaz:





Pretpostavimo da želite da se podniz kreira s druge početne pozicije u vašem nizu. Na primjer, ako želite 'hint' kao podstring, jednostavno promijenite početnu poziciju i duljinu.



Za to izvršavamo našu naredbu na sljedeći način:

Primjer 2: Navedite položaj podniza

Ponekad možete imati svoj niz, ali ne znate točnu duljinu podniza. Međutim, možete odrediti na kojoj poziciji započeti stvaranje podniza. Izlaz prikazuje sve dijelove niza od navedenog položaja do kraja.

Za ovaj primjer, imamo svoj niz kao 'Hello Linuxhint'. Da bismo dobili “Linuxhint” kao naš podniz bez navođenja njegove pozicije, samo trebamo odrediti na kojoj poziciji želimo stvoriti podniz. U ovom slučaju počinjemo OD pozicije 6. Dakle, naša naredba je sljedeća:

SELECT SUBSTRING(‘Hello Linuxhint’ FROM 6) AS korisničko ime;

Primjer 3: Odredite početni i krajnji položaj

Zadani niz, možete stvoriti podniz navođenjem početne i završne pozicije. Na ovaj način, čak i ako je dužina niza duža od željenog podniza, on će ga stvoriti samo na temelju navedenih početnih i krajnjih pozicija.

Koristeći 'Hello Linuxhint' kao naš niz, možemo kreirati naš podstring kao 'Hello Linux' i izostaviti druge odjeljke navodeći početnu i završnu poziciju na sljedeći način:

SELECT SUBSTRING('Hello Linuxhint', 1, 11) AS korisničko ime;

Za ovaj slučaj nije potrebna ključna riječ, samo početna i krajnja pozicija.

Primjer 4: Rad s PostgreSQL tablicom

Također je moguće stvoriti podniz na temelju vrijednosti koje odaberete iz određenog stupca u tablici. Za naš primjer koristimo tablicu 'kupci'.

Recimo da ciljamo stupac 'cust_email' i želimo stvoriti podniz navođenjem duljine. Imali bismo naredbu kako slijedi:

Primijetite kako je za svaku vrijednost u stupcu izlaz podniz duljine 3 izvornog niza.

Ažurirajmo tablicu s punim imenom u našem stupcu imena. Naša nova tablica izgleda ovako:

Sada, ako želimo izdvojiti samo prvi odjeljak iz stupca naziva, koji je prvo ime svakog od naših klijenata, stvaranje podniza za stupac naziva poslužit će. Ovdje moramo odrediti početnu poziciju. Za duljinu podniza postavili smo da bude pozicija u svakom nizu gdje postoji razmak.

Razmak označava razdvajanje između imena i prezimena. Dakle, naša naredba provjerava poziciju na kojoj počinje razmak u nizu. Zatim odaberite podniz od prve pozicije do mjesta gdje se susreće s razmakom.

Pokrećemo našu naredbu na sljedeći način:

SELECT order_id, SUBSTRING(name FROM 1 FOR POSITION( ‘ ‘ IN name) – 1) AS client_fname FROM kupaca;

Odaberemo 'order_id' i podniz, a naš izlaz se pojavljuje na sljedeći način:

Tako možete stvoriti podnizove iz nizova u PostgreSQL tablici.

Zaključak

PostgreSQL nudi funkciju podniza koja korisnicima omogućuje stvaranje podniza koristeći različite kriterije. Ovisno o vašem cilju, možete odrediti duljinu podniza ili početnu i završnu poziciju. Primjeri koji su obrađeni u ovom postu pomoći će vam da se lakše snađete u stvaranju podnizova u PostgreSQL-u. Nastavite vježbati kako biste shvatili koncept.