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:

PostgreSQL Alimerkkijono

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:

PostgreSQL Alimerkkijono

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:

PostgreSQL Alimerkkijono

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:

PostgreSQL Alimerkkijono

Olemme aloittaneet purkamisen paikasta 5, ja 2 merkkiä on purettu.

Harkitse alla olevaa kirjataulukkoa:

PostgreSQL Alimerkkijono

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:

PostgreSQL Alimerkkijono

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:

Osamerkkijonojen yhdistäminen säännölliseen SQL-lausekkeeseen

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.

Alimerkkijonojen yhdistäminen pgAdminilla

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.

Alimerkkijonojen yhdistäminen pgAdminilla

Vaihe 5) Kyselyn suoritus on suoritettu.
Sen pitäisi palauttaa seuraavat tiedot:

Alimerkkijonojen yhdistäminen pgAdminilla

Esimerkki 2:

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

Sen pitäisi palauttaa seuraavat tiedot:

Alimerkkijonojen yhdistäminen pgAdminilla

Tässä on seuraava esimerkki:

SELECT substring('Guru99' from 5);

Sen pitäisi palauttaa seuraavat tiedot:

Alimerkkijonojen yhdistäminen pgAdminilla

Esimerkki 3:

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

Sen pitäisi palauttaa seuraavat tiedot:

Alimerkkijonojen yhdistäminen pgAdminilla

Suoritetaan nyt esimerkki käyttämällä Demo-tietokannan Book-taulukkoa:

Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.

Vaihe 2)

  1. Valitse vasemmalla olevasta navigointipalkista Tietokannat.
  2. Napsauta Demo.

Alimerkkijonojen yhdistäminen pgAdminilla

Vaihe 3) Kirjoita kysely kyselyeditoriin:

SELECT
   id,
   SUBSTRING(name, 1, 15 ) AS name_initial
FROM
   Book
ORDER BY
   id;

Vaihe 4) Napsauta Suorita-painiketta.

Alimerkkijonojen yhdistäminen pgAdminilla

Sen pitäisi palauttaa seuraavat tiedot:

PostgreSQL Alimerkkijono

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.

Osamerkkijonojen yhdistäminen säännölliseen SQL-lausekkeeseen

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.

Osamerkkijonojen yhdistäminen säännölliseen SQL-lausekkeeseen

Sen pitäisi palauttaa seuraavat tiedot:

Osamerkkijonojen yhdistäminen säännölliseen SQL-lausekkeeseen

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