PostgreSQL SUBSTRING() Funktion med regulært udtryk eksempel
⚡ Smart opsummering
PostgreSQL DELSTRING f.eks.tracts og returnerer en del af en streng ved hjælp af en valgfri startposition og længde, og den matcher også tekst mod et regulært POSIX-udtryk for at udtrække mønstre såsom tal eller koder.

Hvad er PostgreSQL Understreng?
PostgreSQL delstrengsfunktionen hjælper dig med at f.eks.tract og returnerer en del af en streng. I stedet for at returnere hele strengen, returneres kun en del af den, hvilket er nyttigt til at trimme kode og læse felter med fast bredde.
Syntaks
PostgreSQL substring funktion tager følgende syntaks:
substring( string [from starting_position] [for length] )
Driftsparametre
Følgende parametre bruges med delstrengsfunktionen:
| streng | Kildestrengen, hvis datatype er varchar, char, string osv. |
| startposition | En valgfri parameter. Den angiver det sted, hvor eks.tracStrengens tion vil begynde. Hvis du udelader denne parameter, vil eks.tracTion starter fra position 1, som er det første tegn i strengen. |
| længde | En valgfri parameter. Den angiver antallet af tegn, der skal udskrives.tracted fra strengen. Hvis du udelader denne parameter, vil funktionen f.eks.tracts fra startposition til slutningen af strengen. |
Eksempler
I dette eksempel ønsker vi at f.eks.tracde første 4 tegn fra ordet Guru99:
SELECT substring('Guru99' for 4);
Kommandoen returnerer følgende:
Vi specificerede ikke startpositionen, så eks.traction af delstrengen startet på position 1. Fire tegn blev fjernettracted for at returnere ovenstående resultat.
Følgende eksempel viser, hvordan du angiver startpositionen:
SELECT substring('Guru99' from 1 for 4);
Kommandoen returnerer følgende:
Vi specificerede, at den tidligeretracDelstrengens sætning skal starte fra position 1, og 4 tegn skal være udløbet.tracted.
Lad os eks.tract 99 fra strengen Guru99:
SELECT substring('Guru99' from 5);
Kommandoen returnerer følgende:
Vi angav startpositionen som 5. Da antallet af tegn, der skal være f.eks.tracted blev ikke specificeret, eks.traction løb til enden af strengen.
Her er et andet eksempel:
SELECT substring('Guru99' from 5 for 2);
Kommandoen returnerer følgende:
Vi startede eks.traction på position 5, og 2 tegn blev eks.tracted.
Overvej bogtabellen nedenfor:
Vi vil gerne have en nogenlunde idé om navnet på hver bog. Vi kan f.eks.trackun de første 15 tegn fra navnekolonnen i tabellen:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Kommandoen returnerer følgende:
Vi har nu en grov idé om navnet på hver bog.
Matchende understrenge med SQL-regulært udtryk
In PostgreSQL, du kan f.eks.tracen delstreng, der matcher et angivet POSIX-regulært udtryk. I dette tilfælde bruger delstrengfunktionen følgende syntaks:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Her er en forklaring af ovenstående parametre. Strengen er kildestrengen, hvis datatype er varchar, char, string osv. matching_pattern er det mønster, der bruges til at søge i strengen.
Eksempler
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Kommandoen returnerer følgende:
Vores inputstreng er Din alder er 22. I mønsteret søger vi efter et numerisk mønster; når det findes, bruges delstrengsfunktionen f.eks.trackun to tegn.
Sådan matcher du delstrenge ved hjælp af pgAdmin
Lad os nu se, hvordan disse handlinger udføres ved hjælp af pgAdmin. Forespørgsler, der ikke kræver en database, kan udføres direkte fra forespørgselseditorvinduet. Gør blot følgende:
Trin 1) Log ind på din pgAdmin-konto.
Trin 2) Klik på ikonet Forespørgselsværktøj i pgAdmin.
Forespørgselsredigeringsvinduet åbnes.
Trin 3) Skriv følgende forespørgsel i editorvinduet.
SELECT substring('Guru99' for 4);
Trin 4) Klik på ikonet Udfør for at udføre forespørgslen.
Trin 5) Forespørgslen er udført. Den skal returnere følgende:
Eksempel 2:
SELECT substring('Guru99' from 1 for 4);
Det skal returnere følgende:
Her er det næste eksempel:
SELECT substring('Guru99' from 5);
Det skal returnere følgende:
Eksempel 3:
SELECT substring('Guru99' from 5 for 2);
Det skal returnere følgende:
Lad os nu køre eksemplet ved hjælp af bogtabellen i Demo-databasen:
Trin 1) Log ind på din pgAdmin-konto.
Trin 2) Klik på Databaser i navigationslinjen til venstre, og klik derefter på Demo.
Trin 3) Indtast forespørgslen i forespørgselseditoren:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Trin 4) Klik på knappen Udfør.
Det skal returnere følgende:
Vi har nu en grundlæggende idé om navnet på hver bog.
Matchende understrenge med SQL-regulært udtryk
For at opnå det samme på pgAdmin skal du gøre følgende:
Trin 1) Log ind på din pgAdmin-konto.
Trin 2) Klik på ikonet Forespørgselsværktøj.
Forespørgselsredigeringsvinduet åbnes.
Trin 3) Skriv følgende forespørgsel i editorvinduet.
SELECT SUBSTRING ( 'Your age is 22', '([0-9]{1,2})' ) as age;
Trin 4) Klik på ikonet Udfør for at udføre forespørgslen.
Det skal returnere følgende:
Download databasen brugt i denne vejledning



















