PostgreSQL strengfunksjoner

PostgreSQL er et veldig kraftig objekt-relasjonsdatabaseadministrasjonssystem. Det gir et stort antall funksjoner og operatører for de innebygde datatypene, og lindrer dermed utviklerne fra enklere oppgaver og fokuserer på løsningen på det større problemet. En slik kategori innebygde funksjoner er PostgreSQL-strengfunksjonene. Strengformatering som sammenkjøring, visning i et bestemt format, innsetting / sletting av underlag osv. Kan noen ganger være en kjedelig oppgave. PostgreSQL-strengfunksjoner tar seg av det for deg.

PostgreSQL har mange funksjoner som ikke er definert i standard SQL-funksjonene. Dette gir utviklerne en enorm horisont av funksjoner som kan utnytte for å løse det større problemet.

For å illustrere ulike PostgreSQL String-funksjoner, må vi først lage en database. Følgende database blir referert til i alle eksemplene:

Eksempler på strengfunksjoner i PostgreSQL

Strengfunksjon er enkel å bruke. Her vil vi diskutere hvordan du bruker strengfunksjon i PostgreSQL

programmering ved hjelp av eksempler

1. ASCII (str)

Returnerer ASCII-verdien til det lengste tegnet til strengen str.

SELECT FirstName, ASCII(FirstName) from Person

2. BIT_LENGTH (str)

Returnerer lengden på strengen str i biter.

SELECT FirstName, BIT_LENGTH(FirstName) from Person

3. CHAR_LENGTH (str) / CHARACTER_LENGTH (str)

Returnerer lengden på strengstrengen i tegn.

SELECT FirstName, CHAR_LENGTH(FirstName) from Person

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

Returnerer en streng dannet ved å forbinde str1 til strn. NULL argumenter blir ignorert.

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

5. str1 || str2 ||… || ikke-str ||… || Strn

Slår sammen str1, str2 til strn og til og med ikke-strenge argumenter.

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

6. INITCAP (str)

Skriver store bokstaver, dvs. at det første bokstaven til hvert ord er med øvre kors og resten er med mindre kammer. Ord bestemmes av ikke-alfanumeriske separatorer.

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

7. NEDRE () og ØVRE ()

Konverterer en streng til små og store bokstaver.

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

8. VENSTRE (str, len) / RIGHT (str, len)

Returnerer de venstre og høyre venstre tegnene fra strengen str. Når len er negativ, returnerer den strengen str, bortsett fra de venstre eller høyre linstegnene.

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

9. LENGTH (str) / LENGTH (str, koding)

Returnerer lengden på strengstrengen i tegn. Dette er i motsetning til bruken av Lengde-funksjonen i SQL. Når det er spesifisert, gir koding lengden i den bestemte kodingen.

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

10. OKTET_LENGTH (str)

Beregner lengden på strengen str i byte.

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

Dette ligner veldig på LENGTH og CHAR_LENGTH funksjoner. Forskjellen kommer når det er flere filtre involvert.

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

Dette skjer fordi Euro (€) -tegnet opptar 3 byte i minnet.

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

Sett inn understreng fra posisjon 0 til strengstrengen i begynnelsen og slutten av strengstrengen til den resulterende strengen har lenketegn.

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)

Returnerer strengen str etter å ha trimmet alle forekomster av røye (r) fra venstre, høyre eller begge ender. Hvis det ikke er spesifisert tegn i argumentene, trimmes mellomrom.

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. POSISJON (underlag i str) / STRPOS (str, underlag)

Finner plasseringen av understrengssubstratet i strengstrengen. Husk at indeksen starter fra 1 i PostgreSQL. Returnerer 0 hvis ingen kamp ble funnet.

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

14. QUOTE_IDENT (str) / QUOTE_LITERAL (str)

Denne spørringen siterer og fjerner sitering av strengen. De fleste spesialkarakterene er doblet.

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

15. Bytte ut (str, fra_str, til_str)

Erstatter alle forekomster av understreng fra_str med understreng til_str i strengstrengen. Det er små og små bokstaver.

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

16. REVERSE (str)

Reverser strengen str.

SELECT FirstName, REVERSE(FirstName) from Person

17. REGEXP_MATCHES (str, mønster)

Returnerer alle underlag som samsvarer med POSIX Regex-mønsteret.

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

18. REGEXP_REPLACE (str, mønster, newstr)

Erstatter alle underlag som samsvarer med POSIX Regex-mønsteret med newstr.

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

19. REGEXP_SPLIT_TO_ARRAY (str, mønster)

Deler strengen str inn i en rekke underlag separert med POSIX Regex-mønster. Mønster E '\\ s +' betyr ett eller flere blanke mellomrom.

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

20. REGEXP_SPLIT_TO_TABLE (str, mønster)

Deler strengen str inn i en tabell med underlag atskilt med POSIX Regex-mønster.

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

21. SUBSTRING (str fra pos for len)

Returnerer en substring fra streng str som starter ved stillingen pos av lengden len.

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

22. SUBSTRING (str fra posix_pattern) / SUBSTRING (str fra sql_pattern for escape)

Returnerer en substring fra strengstr som samsvarer med POSIX Regex eller SQL Regex. Regex er et stort, flott og ekstremt nyttig emne i datamaskiner. Det anbefales å få tak i Regex-mønstre før du implementerer dem tilfeldig.

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

Konklusjon - PostgreSQL strengfunksjoner

Så å konkludere, disse sammen med andre innebygde funksjoner er det som gjør PostgreSQL så kraftig. Inkludering av regex-mønstre tilfører mer kraft til det. Når kunsten å skrive Regex-mønstre er lært og mestret, ville det være morsommere å leke med databasen.

Anbefalte artikler

Dette har vært en guide til PostgreSQL strengfunksjoner. Her diskuterte vi hvordan du bruker strengfunksjoner i PostgreSQL-programmering ved hjelp av eksempler. Du kan også gå gjennom de andre foreslåtte artiklene våre for å lære mer–

  1. Strengefunksjoner i Java med eksempler
  2. Hvordan installerer PostgreSQL?
  3. PostgreSQL intervjuspørsmål
  4. Regex-funksjoner i Python (eksempel)