PostgreSQL SUBSTRING() Funktio säännöllisen lausekkeen esimerkillä
Mikä on PostgreSQL Alimerkkijono?
- PostgreSQL alimerkkijono-toiminto auttaa poimimaan ja palauttamaan osan merkkijonosta. Sen sijaan, että se palauttaisi koko merkkijonon, se palauttaa vain osan siitä.
Syntaksi
- PostgreSQL osamerkkijonofunktio käyttää seuraavan syntaksin:
substring( string [from starting_position] [for length] )
parametrit
Nimi | Tuotetiedot |
---|---|
jono | Lähdemerkkijono, jonka tietotyyppi on varchar, char, merkkijono jne. |
Aloitusasento | Se on valinnainen parametri. Se tarkoittaa paikkaa, josta merkkijonon purkaminen alkaa. Jos jätät tämän parametrin pois, poiminta alkaa kohdasta 1, joka on merkkijonon ensimmäinen merkki. |
pituus | Se on valinnainen parametri. Se ilmaisee merkkijonosta erotettavien merkkien määrän. Jos jätät tämän parametrin pois, funktio poimii alkusijainnista merkkijonon loppuun. |
Esimerkit
Tässä esimerkissä haluamme poimia ensimmäiset 4 merkkiä sanasta Guru99:
SELECT substring('Guru99' for 4);
Komento palauttaa seuraavan:
Emme määrittäneet aloituskohtaa, joten alimerkkijonon purku alkaa paikasta 1. 4 merkkiä erotettiin palauttamaan yllä oleva.
Seuraava esimerkki näyttää, kuinka aloitussijainti määritetään:
SELECT substring('Guru99' from 1 for 4);
Komento palauttaa seuraavan:
Määritimme, että alimerkkijonon purkamisen pitäisi alkaa paikasta 1 ja 4 merkkiä tulee purkaa.
Otetaanpa 99 merkkijonosta Guru99:
SELECT substring('Guru99' from 5);
Komento palauttaa seuraavan:
Määritimme aloituspaikaksi 5. Koska erotettavien merkkien määrää ei ollut määritetty, poimiminen jatkui merkkijonon loppuun.
Tässä on toinen esimerkki:
SELECT substring('Guru99' from 5 for 2);
Komento palauttaa seuraavan:
Olemme aloittaneet purkamisen paikasta 5, ja 2 merkkiä on purettu.
Harkitse alla olevaa kirjataulukkoa:
Haluamme saada karkean käsityksen kunkin kirjan nimestä. Voimme kuitenkin poimia vain ensimmäiset 15 merkkiä taulukon nimisarakkeesta:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Komento palauttaa seuraavan:
Meillä on nyt karkea käsitys jokaisen kirjan nimestä.
Osamerkkijonojen yhdistäminen säännölliseen SQL-lausekkeeseen
In PostgreSQL, voimme poimia alimerkkijonon, joka vastaa määritettyä säännöllistä POSIX-lauseketta. Tässä tapauksessa alimerkkijonofunktiota käytetään seuraavan syntaksin kanssa:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Tässä on selitys yllä olevista parametreista:
Merkkijono on lähdemerkkijono, jonka tietotyyppi on varchar, char, string jne.
Mating_pattern on malli, jota käytetään haettaessa merkkijonosta.
Esimerkit
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Komento palauttaa seuraavan:
Syöttömerkkijonomme on, että ikäsi on 22. Mallissa etsimme merkkijonostamme numeerista kuviota, kun tämä löytyy, osamerkkijonofunktion tulee poimia vain kaksi merkkiä.
Alimerkkijonojen yhdistäminen pgAdminilla
Katsotaan nyt, kuinka toiminnot suoritetaan pgAdminilla.
Yllä olevat kyselyt, joissa emme tarvitse tietokantaa, voidaan suorittaa suoraan kyselyn muokkausikkunasta. Tee vain seuraava:
Vaihe 1) Kirjaudu tilillesi.
Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2) pgAdminissa,
Napsauta Kyselytyökalu-kuvaketta.
Kyselyn muokkausikkuna avautuu.
Vaihe 3) Kirjoita kysely.
Kirjoita seuraava kysely editori-ikkunaan.
SELECT substring('Guru99' for 4);
Vaihe 4) Suorita kysely
Napsauta Suorita-kuvaketta suorittaaksesi kyselyn.
Vaihe 5) Kyselyn suoritus on suoritettu.
Sen pitäisi palauttaa seuraavat tiedot:
Esimerkki 2:
SELECT substring('Guru99' from 1 for 4);
Sen pitäisi palauttaa seuraavat tiedot:
Tässä on seuraava esimerkki:
SELECT substring('Guru99' from 5);
Sen pitäisi palauttaa seuraavat tiedot:
Esimerkki 3:
SELECT substring('Guru99' from 5 for 2);
Sen pitäisi palauttaa seuraavat tiedot:
Suoritetaan nyt esimerkki käyttämällä Demo-tietokannan Book-taulukkoa:
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2)
- Valitse vasemmalla olevasta navigointipalkista Tietokannat.
- Napsauta Demo.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Vaihe 4) Napsauta Suorita-painiketta.
Sen pitäisi palauttaa seuraavat tiedot:
Meillä on nyt peruskäsitys jokaisen kirjan nimestä.
Osamerkkijonojen yhdistäminen säännölliseen SQL-lausekkeeseen
Suorita sama pgAdminissa seuraavasti:
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2) Napsauta Kyselytyökalu-kuvaketta.
Kyselyn muokkausikkuna avautuu.
Vaihe 3) Kirjoita seuraava kysely editori-ikkunaan.
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Vaihe 4) Napsauta Suorita-kuvaketta suorittaaksesi kyselyn.
Sen pitäisi palauttaa seuraavat tiedot:
Yhteenveto
- - PostgreSQL Osamerkkijonotoiminto auttaa purkamaan ja palauttamaan vain osan merkkijonosta.
- Merkkijonon ensimmäinen merkki on paikassa 1.
- Jos merkkijonosta erotettavien merkkien määrää ei ole määritetty, funktio poimii merkit määritetystä aloituspaikasta merkkijonon loppuun.
- Jos erotettavien merkkien määrä on määritetty, vain tämä määrä merkkejä poimitaan.
Lataa tässä opetusohjelmassa käytetty tietokanta