PostgreSQL SUBSTRING() Funcție cu exemplu regex
Ce Este PostgreSQL Subșir?
PostgreSQL Funcția de subșir te ajută să exprimitract și returnează o parte dintr-un șir de caractere. În loc să returneze întregul șir de caractere, returnează doar o parte din acesta.
Sintaxă
PostgreSQL funcția subșir are următoarea sintaxă:
substring( string [from starting_position] [for length] )
parametrii
| Nume | Descriere |
|---|---|
| şir | Șirul sursă al cărui tip de date este varchar, char, șir etc. |
| poziție_de_pornire | Este un parametru opțional. Indică locul unde extracțiunea șirului va începe. Dacă omiteți acest parametru, exemplultracțiunea va începe de la poziția 1, care este primul caracter din șir. |
| lungime | Este un parametru opțional. Indică numărul de caractere care vor fi exprimate.tracextras din șir. Dacă omiteți acest parametru, funcția va extract de la poziția_inițială până la sfârșitul șirului. |
Exemple
În acest exemplu, vrem să exprimămtracprimele 4 caractere din cuvânt Guru99:
SELECT substring('Guru99' for 4);
Comanda va returna următoarele:
Nu am specificat poziția de pornire, așa că extracțiunea subșirului începe la poziția 1. Au fost exprimate 4 caracteretracted să returneze cele de mai sus.
Următorul exemplu arată cum se specifică poziția de pornire:
SELECT substring('Guru99' from 1 for 4);
Comanda va returna următoarele:
Am specificat că fostultracțiunea subșirului ar trebui să înceapă de la poziția 1 și ar trebui să fie exprimate 4 caracteretracted.
Să exprimămtract 99 din șir Guru99:
SELECT substring('Guru99' from 5);
Comanda va returna următoarele:
Am specificat poziția de pornire ca fiind 5. Deoarece numărul de caractere care trebuie exprimatetracted nu a fost specificat, fostultracțiunea a alergat până la capătul șirului.
Iată un alt exemplu:
SELECT substring('Guru99' from 5 for 2);
Comanda va returna următoarele:
Am început foștiitracțiune la poziția 5 și au fost exprimate 2 caracteretracted.
Luați în considerare tabelul Cărții de mai jos:
Vrem să ne facem o idee aproximativă despre numele fiecărei cărți. Totuși, putem extracdoar primele 15 caractere din coloana de nume a tabelului:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Comanda va returna următoarele:
Acum avem o idee aproximativă despre numele fiecărei cărți.
Potrivirea subșirurilor cu expresia regulată SQL
In PostgreSQL, putem extracun subșir care se potrivește cu o expresie regulată POSIX specificată. În acest caz, funcția subșir este utilizată cu următoarea sintaxă:
SUBSTRING(string FROM matching_pattern)
or
SUBSTRING(string, matching_pattern);
Iată o explicație a parametrilor de mai sus:
Șirul este șirul sursă al cărui tip de date este varchar, char, șir etc.
Mating_pattern este modelul care trebuie utilizat pentru căutarea în șir.
Exemple
SELECT
SUBSTRING (
'Your age is 22',
'([0-9]{1,2})'
) as age;
Comanda va returna următoarele:
Șirul nostru de intrare este vârsta ta este 22. În model, căutăm un model numeric în șirul nostru; atunci când acesta este găsit, funcția subșirului ar trebui să exprime doartracdouă personaje.
Cum să potriviți subșiruri folosind pgAdmin
Acum să vedem cum sunt efectuate acțiunile folosind pgAdmin.
Interogările de mai sus în care nu avem nevoie de o bază de date pot fi executate direct din fereastra editorului de interogări. Doar faceți următoarele:
Pas 1) Conectați-vă la contul dvs.
Conectați-vă la contul dvs. pgAdmin.
Pas 2) Pe pgAdmin,
Faceți clic pe pictograma Instrument de interogare.
Se va deschide fereastra editorului de interogări.
Pas 3) Tastați interogarea.
Tastați următoarea interogare în fereastra editorului.
SELECT substring('Guru99' for 4);
Pas 4) Executați interogarea
Faceți clic pe pictograma Execute pentru a executa interogarea.
Pas 5) Execuția interogării este finalizată.
Ar trebui să returneze următoarele:
Exemplu 2:
SELECT substring('Guru99' from 1 for 4);
Ar trebui să returneze următoarele:
Iată următorul exemplu:
SELECT substring('Guru99' from 5);
Ar trebui să returneze următoarele:
Exemplu 3:
SELECT substring('Guru99' from 5 for 2);
Ar trebui să returneze următoarele:
Acum, să rulăm exemplul folosind tabelul Book al bazei de date Demo:
Pas 1) Conectați-vă la contul dvs. pgAdmin.
Pas 2)
- Din bara de navigare din stânga, faceți clic pe Baze de date.
- Faceți clic pe Demo.
Pas 3) Introduceți interogarea în editorul de interogări:
SELECT id, SUBSTRING(name, 1, 15 ) AS name_initial FROM Book ORDER BY id;
Pas 4) Faceți clic pe butonul Execute.
Ar trebui să returneze următoarele:
Acum avem o idee de bază despre numele fiecărei cărți.
Potrivirea subșirurilor cu expresia regulată SQL
Pentru a realiza același lucru pe pgAdmin, faceți următoarele:
Pas 1) Conectați-vă la contul dvs. pgAdmin.
Pas 2) Faceți clic pe pictograma Instrument de interogare.
Se va deschide fereastra editorului de interogări.
Pas 3) Tastați următoarea interogare în fereastra editorului.
SELECT
SUBSTRING (
'Your age is 22',
'([0-9]{1,2})'
) as age;
Pas 4) Faceți clic pe pictograma Execute pentru a executa interogarea.
Ar trebui să returneze următoarele:
Rezumat
- PostgreSQL Funcția subșir ajută la ex.tracting și returnând doar o parte dintr-un șir de caractere.
- Primul caracter al șirului este în poziția 1.
- Dacă numărul de caractere care trebuie exprimatetracDacă nu este specificat un element extras din șir, funcția va expiratract caractere de la poziția de început specificată până la sfârșitul șirului.
- Dacă numărul de caractere care trebuie exprimatetracDacă este specificat ted, va fi exprimat doar acel număr de caractere.tracted.



















