PostgreSQL stringifunktsioonid

PostgreSQL on väga võimas objekti-relatsioonilise andmebaasi haldussüsteem. See pakub sisseehitatud andmetüüpidele suurt hulka funktsioone ja operaatoreid, vabastades seeläbi arendajad lihtsamatest ülesannetest ja keskendudes suurema probleemi lahendusele. Üks selline sisseehitatud funktsioonide kategooria on PostgreSQL stringifunktsioonid. Stringi vormindamine, näiteks liitmine, kindlas vormingus kuvamine, alamstringide sisestamine / kustutamine jne, võib mõnikord olla tüütu ülesanne. PostgreSQL stringifunktsioonid hoolitsevad selle eest teie eest.

PostgreSQL-l on palju funktsioone, mida standardses SQL-funktsioonis pole määratletud. See annab arendajatele tohutu horisondi funktsioone, mida saab kasutada suurema probleemi lahendamiseks.

Erinevate PostgreSQL Stringi funktsioonide illustreerimiseks peame kõigepealt looma andmebaasi. Kõigis näidetes viidatakse järgmisele andmebaasile:

Stringifunktsioonide näited PostgreSQL-is

Keelte funktsiooni on lihtne kasutada. Siin räägime sellest, kuidas kasutada stringifunktsiooni PostgreSQL-is

programmeerimine näidete abil

1. ASCII (str)

Tagastab stringi stringi vasakpoolseima tähe ASCII väärtuse.

SELECT FirstName, ASCII(FirstName) from Person

2. BIT_LENGTH (str)

Tagastab stringi pikkuse bittides.

SELECT FirstName, BIT_LENGTH(FirstName) from Person

3. CHAR_LENGTH (str) / CHARACTER_LENGTH (str)

Tagastab stringi pikkuse tähemärkides.

SELECT FirstName, CHAR_LENGTH(FirstName) from Person

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

Tagastab strl, mis on moodustatud str1 liitmisel strn-ga. NULL argumenti eiratakse.

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

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

Mõtteahelad str1, str2 strn ja isegi stringita argumendid.

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

6. INITCAP (str)

Stringitakse suurtähtedega, st iga sõna esitäht on suurtähtedega ja ülejäänud tähed on kirjutatud suurtähega. Sõnad määratakse mittetähtnumbriliste eraldajate abil.

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

7. Alumine () ja ülemine ()

Teisendab stringi väiketähtedeks ja suurtähtedeks.

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

8. VASAK (str, len) / PAREM (str, len)

Tagastab stringi str vasakpoolsed ja parempoolsemad tähemärgid. Kui len on negatiivne, tagastab see stringi, välja arvatud vasakpoolseim või parempoolsem Len-tähemärk.

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

9. PIKKUS (str) / LENGTH (str, kodeering)

Tagastab stringi pikkuse tähemärkides. See erineb aga pikkuse funktsioonist SQL-is. Kui see on täpsustatud, annab kodeering konkreetse kodeeringu pikkuse.

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

10. OCTET_LENGTH (str)

Arvutab stringi pikkuse baitides.

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

See sarnaneb väga palju funktsioonidega LENGTH ja CHAR_LENGTH. Erinevus ilmneb siis, kui kaasatud on mitmebaidised märgid.

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

See juhtub seetõttu, et Euro (€) märk võtab mällu 3 baiti.

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

Lisab alamstringi stringi padstriumi positsioonist 0 stringi algusesse ja lõppu, kuni tulemuseks olev string koosneb len tähemärkidest.

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, märgid) / RTRIM (str, märgid) / TRIM (str, märgid)

Tagastab stringi pärast kõigi sümbolite vasakul, paremal või mõlemast otsast kärpimist. Kui märgid pole argumentides täpsustatud, kärbitakse tühikud.

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 (alaosa str) / STRPOS (str alaosa)

Leiab alamstringi alamjaama stringi str. Pidage meeles, et indeks algab PostgreSQL-is 1-st. Tagastab 0, kui vastet ei leitud.

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

14. QUOTE_IDENT (str) / QUOTE_LITERAL (str)

See päring tsiteerib stringi str. Enamik erimärke kahekordistatakse.

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

15. Asenda (str, alates_str, to_str)

Asendab kõik alamstringi esinemised alates_str alamstringiga kuni_str stringis. See on tõstutundlik.

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

16. REVERSE (str)

Pöörab stringi str.

SELECT FirstName, REVERSE(FirstName) from Person

17. REGEXP_MATCHES (str, muster)

Tagastab kõik alamstringid, mis vastavad POSIX Regexi mustrile.

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

18. REGEXP_REPLACE (str, muster, newstr)

Asendab kõik alamstringid, mis vastavad POSIX Regexi mustrile uue stristriga.

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

19. REGEXP_SPLIT_TO_ARRAY (str, muster)

Jagab stringi strossi POSIX Regexi mustriga eraldatud alamstringide massiiviks. Muster E '\\ s +' tähendab ühte või mitut tühikut.

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

20. REGEXP_SPLIT_TO_TABLE (str, muster)

Jagab stringi stringi alamstringide tabeliks, mis on eraldatud POSIX Regexi mustriga.

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

21. SUBSTRING (str posist len ​​jaoks)

Tagastab alamstringi stringist str, alustades positsioonist pikkusega len.

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

22. SUBSTRING (str alates posix_pattern) / SUBSTRING (str alates sql_pattern põgenemiseks)

Tagastab stringist str alamstringi, mis vastab POSIX Regexile või SQL Regexile. Regex on suur, suurepärane ja äärmiselt kasulik teema arvutites. Enne nende juhuslikku rakendamist on soovitatav tutvuda Regexi mustritega.

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

Järeldus - PostgreSQL stringifunktsioonid

Kokkuvõtteks võib öelda, et need koos teiste sisseehitatud funktsioonidega muudavad PostgreSQLi nii võimsaks. Regex-mustrite kaasamine lisab sellele rohkem jõudu. Kui Regexi mustrite kirjutamise kunst on õpitud ja omandatud, oleks andmebaasiga mängimine palju toredam.

Soovitatavad artiklid

See on olnud juhend PostgreSQL stringifunktsioonide jaoks. Siin arutasime näidete abil, kuidas kasutada stringifunktsioone PostgreSQL programmeerimisel. Lisateavet leiate ka meie muudest soovitatud artiklitest -

  1. Stringifunktsioonid Java koos näidetega
  2. Kuidas installida PostgreSQL?
  3. PostgreSQL-i intervjuu küsimused
  4. Regexi funktsioonid Pythonis (näide)

Kategooria: