PostgreSQL SUBSTRING() függvény reguláris kifejezéssel
Mi a PostgreSQL Alkarakterlánc?
Az PostgreSQL a substring függvény segít a példákbantract és egy karakterlánc egy részét adja vissza. A teljes karakterlánc visszaadása helyett csak annak egy részét adja vissza.
Szintaxis
Az PostgreSQL A substring függvény a következő szintaxist veszi fel:
substring( string [from starting_position] [for length] )
paraméterek
| Név | Leírás |
|---|---|
| húr | A forráskarakterlánc, amelynek adattípusa: varchar, char, string stb. |
| kezdő pozíció | Ez egy opcionális paraméter. Azt a helyet jelöli, ahol az ex.tracA karakterlánc végrehajtása megkezdődik. Ha kihagyja ezt a paramétert, a példatracA kifejezés az 1. pozíciótól kezdődik, ami a karakterlánc első karaktere. |
| hossz | Ez egy opcionális paraméter. A kiírandó karakterek számát jelöli.traca karakterláncból. Ha elhagyja ezt a paramétert, a függvény a következőt fogja kiszámolni:tract a kezdő_pozíciótól a karakterlánc végéig. |
Példák
Ebben a példában azt szeretnénk kideríteni, hogytraca szó első 4 karaktere Guru99:
SELECT substring('Guru99' for 4);
A parancs a következőt adja vissza:
Nem adtuk meg a kiindulási pozíciót, így az extracaz alkarakterlánc 1. pozíciótól kezdődő 4 karakter volttracvissza kell adnia a fentieket.
A következő példa bemutatja, hogyan kell megadni a kiindulási pozíciót:
SELECT substring('Guru99' from 1 for 4);
A parancs a következőt adja vissza:
Meghatároztuk, hogy az extracAz alkarakterlánc expressziójának az 1. pozíciótól kell kezdődnie, és 4 karakternek kell lennie.tracted.
Nézzük meg pl.tract 99 a húrból Guru99:
SELECT substring('Guru99' from 5);
A parancs a következőt adja vissza:
A kezdőpozíciót 5-nek adtuk meg. Mivel a végrehajtandó karakterek számatracTed nevét nem nevezték meg, az extraca ció a húr végéig futott.
Itt egy másik példa:
SELECT substring('Guru99' from 5 for 2);
A parancs a következőt adja vissza:
Elkezdtük az ex-ttracció az 5. pozícióban, és 2 karakter lett kiírvatracted.
Tekintsük az alábbi könyvtáblázatot:
Szeretnénk egy nagyjából pontos képet kapni az egyes könyvek címéről. Azonban ki tudjuk próbálnitraccsak a tábla név oszlopának első 15 karaktere:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
A parancs a következőt adja vissza:
Most már van hozzávetőleges elképzelésünk minden könyv nevéről.
Alkarakterláncok illesztése SQL reguláris kifejezéssel
In PostgreSQL, ki tudjuk mutatnitracegy megadott POSIX reguláris kifejezésnek megfelelő részkarakterlánc. Ebben az esetben a részkarakterlánc függvényt a következő szintaxissal használjuk:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Íme a fenti paraméterek magyarázata:
A karakterlánc az a forráskarakterlánc, amelynek adattípus a varchar, char, string stb.
A matching_pattern az a minta, amelyet a karakterláncban történő kereséshez kell használni.
Példák
SELECT
SUBSTRING (
'Your age is 22',
'([0-9]{1,2})'
) as age;
A parancs a következőt adja vissza:
A bemeneti karakterláncunk a következő: az életkorod 22. A mintában numerikus mintát keresünk a karakterláncban, amikor ezt megtaláljuk, az alkarakterlánc függvénynek csak akkor szabad kiírniatrackét karakter.
A részstringek egyeztetése a pgAdmin segítségével
Most nézzük meg, hogyan hajtják végre a műveleteket a pgAdmin használatával.
A fenti lekérdezések, ahol nincs szükségünk adatbázisra, közvetlenül végrehajthatók a lekérdezésszerkesztő ablakból. Csak tegye a következőket:
Step 1) Jelentkezzen be fiókjába.
Jelentkezzen be pgAdmin fiókjába.
Step 2) A pgAdminban,
Kattintson a Lekérdező eszköz ikonra.
Megnyílik a lekérdezésszerkesztő ablak.
Step 3) Írja be a lekérdezést.
Írja be a következő lekérdezést a szerkesztő ablakba.
SELECT substring('Guru99' for 4);
Step 4) Lekérdezés végrehajtása
A lekérdezés végrehajtásához kattintson a Végrehajtás ikonra.
Step 5) A lekérdezés végrehajtása megtörtént.
A következőt kell visszaadnia:
Példa 2:
SELECT substring('Guru99' from 1 for 4);
A következőt kell visszaadnia:
Íme a következő példa:
SELECT substring('Guru99' from 5);
A következőt kell visszaadnia:
Példa 3:
SELECT substring('Guru99' from 5 for 2);
A következőt kell visszaadnia:
Most futtassuk a példát a Demo adatbázis Book táblázatával:
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2)
- A bal oldali navigációs sávban kattintson az Adatbázisok elemre.
- Kattintson a Demo gombra.
Step 3) Írja be a lekérdezést a lekérdezésszerkesztőbe:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Step 4) Kattintson a Végrehajtás gombra.
A következőt kell visszaadnia:
Most már minden könyv nevéről van egy alapötletünk.
Alkarakterláncok illesztése SQL reguláris kifejezéssel
Ugyaneznek a pgAdminban való végrehajtásához tegye a következőket:
Step 1) Jelentkezzen be pgAdmin fiókjába.
Step 2) Kattintson a Lekérdező eszköz ikonra.
Megnyílik a lekérdezésszerkesztő ablak.
Step 3) Írja be a következő lekérdezést a szerkesztő ablakba.
SELECT
SUBSTRING (
'Your age is 22',
'([0-9]{1,2})'
) as age;
Step 4) A lekérdezés végrehajtásához kattintson a Végrehajtás ikonra.
A következőt kell visszaadnia:
Összegzésként
- Az PostgreSQL A részkarakterlánc függvény például a következő esetekben segít:traccsak egy karakterlánc egy részének megadása és visszaadása.
- A karakterlánc első karaktere az 1. pozícióban van.
- Ha a kiszámolandó karakterek számatracHa a karakterláncból származó ted nincs megadva, a függvény ki fogja próbálnitract karakter a megadott kezdőpozíciótól a karakterlánc végéig.
- Ha a kiszámolandó karakterek számatracHa a ted meg van adva, akkor csak az adott számú karakter lesz extracted.



















