PostgreSQL String funkcije

PostgreSQL je zelo močan sistem za upravljanje objektnih in relacijskih baz podatkov. Omogoča veliko število funkcij in operaterjev za vgrajene tipe podatkov, s čimer razvijalce razbremeni pred preprostejšimi nalogami in se osredotoči na rešitev večje težave. Ena takšnih kategorij vgrajenih funkcij so funkcije niza PostgreSQL. Oblikovanje vrvic, kot so združevanje, prikazovanje v določeni obliki, vstavljanje / brisanje podpostavk itd., Je včasih lahko dolgočasna naloga. PostgreSQL niz funkcije skrbijo za to namesto vas.

PostgreSQL ima veliko funkcij, ki niso definirane v standardnih funkcijah SQL. To razvijalcem ponuja obsežno obzorje funkcij, s katerimi lahko rešite večji problem.

Za ponazoritev različnih funkcij nizov PostgreSQL String moramo najprej ustvariti bazo podatkov. Naslednja baza podatkov bo navedena v vseh primerih:

Primeri nizskih funkcij v PostgreSQL

String funkcija je enostavna za uporabo. Tukaj bomo razpravljali o uporabi string funkcije v PostgreSQL

programiranje s pomočjo primerov

1. ASCII (str)

Vrne vrednost ASCII skrajnega levega znaka str.

SELECT FirstName, ASCII(FirstName) from Person

2. BIT_LENGTH (str)

Vrne dolžino niza str v bitih.

SELECT FirstName, BIT_LENGTH(FirstName) from Person

3. CHAR_LENGTH (str) / CHARACTER_LENGTH (str)

Vrne dolžino niza str v znakih.

SELECT FirstName, CHAR_LENGTH(FirstName) from Person

4. CONCAT (str1, str2, …., Strn)

Vrne niz, ki je tvorjen tako, da se str1 pridruži strn. Argumenti NULL se ne upoštevajo.

SELECT FirstName, LastName, CONCAT(FirstName, LastName) as DisplayName from Person

5. str1 || str2 ||… || non-str ||… || strn

Združi str1, str2 v strn in celo neverične argumente.

SELECT Id || FirstName || LastName || phone || address as Concat_All from Person

6. INITCAP (str)

Velika črka vsebuje veliko črko, tj. Prva črka vsake besede je napisana z velikimi črkami, ostalo pa z malimi črkami. Besede so določene z ne-alfanumeričnimi ločevalci.

Select INITCAP('This is a PostgreSQL example.')

7. SPODNJI () in GORNI ​​()

Pretvori niz v mala in velika črka.

SELECT FirstName, LOWER(FirstName) as Lower, UPPER(FirstName) as Upper from Person

8. LEVO (str, len) / DESNO (str, len)

Vrne skrajni levi in ​​desni leni znak iz niza str. Ko je len negativen, vrne niz niz, razen za najbolj levi ali desni desni len znak.

SELECT FirstName, LastName, CONCAT(LEFT(LastName, 3), RIGHT(FirstName, 2)) as LoginID from Person

9. DOLINA (str) / DOLINA (str, kodiranje)

Vrne dolžino niza str v znakih. To pa ni v nasprotju z delovanjem funkcije Length v SQL. Ko je določeno, kodiranje določa dolžino določenega kodiranja.

SELECT FirstName, LENGTH(FirstName), CHAR_LENGTH(FirstName) from Person

10. OCTET_LENGTH (str)

Izračuna dolžino niza str v bajtih.

SELECT FirstName, LENGTH(FirstName), CHAR_LENGTH(FirstName), OCTET_LENGTH(FirstName) from Person

To je zelo podobno funkcijama LENGTH in CHAR_LENGTH. Razlika pride, kadar so vključeni večbajtni znaki.

SELECT '€' as multibyte_char, LENGTH('€'), CHAR_LENGTH('€'), OCTET_LENGTH('€')

To se zgodi, ker znak evra (€) zaseda 3 bajte v pomnilniku.

11. LPAD (str, len, padstr) / RPAD (str, len, padstr)

Vstavi podvrstico iz položaja 0 niza podstr na začetku in koncu niza str, dokler rezultat ni niz len znakov.

SELECT FirstName, LastName, LPAD(CONCAT_WS(' ', FirstName, LastName), CHAR_LENGTH(CONCAT_WS(' ', FirstName, LastName))+CHAR_LENGTH('Mr. '), 'Mr. ') as DisplayName from Person

12. LTRIM (str, chars) / RTRIM (str, chars) / TRIM (str, chars)

Vrne niz str po obrezovanju vseh pojavov znakov z levega, desnega ali obeh koncev. Če znaki niso navedeni v argumentih, se preslepijo presledki.

SELECT LTRIM(' abc ') as L1, RTRIM(' abc ') as R1, TRIM(' abc ') as T1, LTRIM('xxxyyabcxyz', 'xyz') as L2, RTRIM('xxxyyabcxyz', 'xyz') as R2, TRIM('xxxyyabcxyz', 'xyz') as T2

13. POSITION (podstr v str) / STRPOS (str, podstr)

Poišče položaj podstrani podstreznosti v nizu str. Ne pozabite, da se indeks začne s 1 v PostgreSQL. Vrne 0, če ni bilo mogoče najti ujema.

SELECT Address, POSITION('Avenue' in Address) from Person

14. QUOTE_IDENT (str) / QUOTE_LITERAL (str)

Ta poizvedba citira in odjavi niz str. Večina posebnih znakov se podvoji.

SELECT Address, QUOTE_IDENT(Address), QUOTE_LITERAL(Address) from Person

15. ZAMENI (str, od_str, do_str)

Zamenja vse pojave podvrsti from_str s pod string nizom to_str v nizu str. Je veliko in veliko.

SELECT Address, REPLACE(Address, 's', 'SS') from Person

16. REVERSE (str)

Obrne niz str.

SELECT FirstName, REVERSE(FirstName) from Person

17. REGEXP_MATCHES (str, vzorec)

Vrne vse podstrezke, ki ustrezajo vzorcu POSIX Regex.

SELECT Address, REGEXP_MATCHES(Address, '.(sN)i.') from Perso

18. REGEXP_REPLACE (str, vzorec, newstr)

Zamenja vse podstrezke, ki se ujemajo z vzorcem POSIX Regex z novim.

SELECT Address, REGEXP_MATCHES(Address, '..(e)(n)..'), REGEXP_REPLACE(Address, '..(e)(n)..', 'Street') from Person

19. REGEXP_SPLIT_TO_ARRAY (str, vzorec)

Razdeli niz str v niz podvrstic, ločenih z vzorcem POSIX Regex. Vzorec E '\\ s +' pomeni enega ali več praznih presledkov.

SELECT Address, REGEXP_SPLIT_TO_ARRAY(Address, E'\\s+') from Person

20. REGEXP_SPLIT_TO_TABLE (str, vzorec)

Razdeli niz str v tabelo podpostavk, ločenih z vzorcem POSIX Regex.

SELECT Address, REGEXP_SPLIT_TO_TABLE(Address, E'\\s+') from Person

21. SUBSTRING (str od pos za len)

Vrne podvrsto iz niza str, ki se začne na položaju pos dolžine len.

SELECT FirstName, SUBSTRING(FirstName from 2 for 4) as a sub from Person

22. SUBSTRING (str od posix_pattern) / SUBSTRING (str iz sql_pattern za pobeg)

Vrne podvrsto iz niza str, ki se ujema z POSIX Regex ali SQL Regex. Regex je velika, čudovita in izjemno uporabna tema v računalnikih. Priporočljivo je, da se prijete vzorcev Regexa, preden jih naključno izvedete.

SELECT FirstName, SUBSTRING(FirstName from '…$') as sub1, substring(FirstName from '%#"o_a#"_%' for '#') as sub2 from Person

Zaključek - String funkcije PostgreSQL

Za zaključek je torej, da so skupaj z drugimi vgrajenimi funkcijami PostgreSQL tako močne. Vključitev vzorcev regex ji doda več moči. Ko se bomo umetnosti pisanja vzorcev Regexa naučili in obvladali, bi bilo igranje z bazo veliko bolj zabavno.

Priporočeni članki

To je vodnik za PostgreSQL String Funkcije. Tu smo razpravljali o uporabi string funkcij v programiranju PostgreSQL s pomočjo primerov. Obiščite lahko tudi druge naše predlagane članke, če želite izvedeti več -

  1. Nizčne funkcije v Javi s primeri
  2. Kako namestiti PostgreSQL?
  3. Vprašanja za Intergre PostgreSQL
  4. Funkcije Regex v Pythonu (primer)