PostgreSQL karakterlánc funkciók

A PostgreSQL nagyon hatékony objektum-relációs adatbázis-kezelő rendszer. Számos funkciót és operátort biztosít a beépített adattípusokhoz, ezáltal mentesíti a fejlesztőket az egyszerűbb feladatoktól és a nagyobb probléma megoldására összpontosít. A beépített függvények egyik ilyen kategóriája a PostgreSQL karakterláncfüggvények. A húros formázás, például összefűzés, egy bizonyos formátumban történő megjelenítés, részsorozatok beszúrása / törlése stb. Időnként unalmas feladat lehet. A PostgreSQL karakterlánc-funkciók ezt gondoskodnak az Ön számára.

A PostgreSQL számos olyan funkciót tartalmaz, amelyeket a szokásos SQL funkciók nem határoznak meg. Ez a fejlesztők számára olyan hatalmas horizontot biztosít a funkciók számára, amelyek kihasználhatják a nagyobb probléma megoldását.

A PostgreSQL String különféle funkcióinak bemutatására először létre kell hoznunk egy adatbázist. A következő adatbázisra hivatkozunk az összes példában:

Példák a PostgreSQL karakterlánc-funkcióira

A húros funkció könnyen használható. Itt megvitatjuk, hogyan lehet a string funkciót használni a PostgreSQL-ben

programozás példák segítségével

1. ASCII (str)

Visszaadja a karakterlánc baloldali karakterének ASCII-értékét.

SELECT FirstName, ASCII(FirstName) from Person

2. BIT_LENGTH (str)

Visszaadja a karakterlánc hosszát bitben.

SELECT FirstName, BIT_LENGTH(FirstName) from Person

3. CHAR_LENGTH (str) / CHARACTER_LENGTH (str)

Visszaadja a karakterlánc karakterláncának hosszát.

SELECT FirstName, CHAR_LENGTH(FirstName) from Person

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

Visszaad egy karakterláncot, amelyet az str1 összekapcsolásával az strn-hez kötünk. A NULL argumentumokat figyelmen kívül hagyjuk.

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

5. str1 || str2 ||… || nem str ||… || strn

Az str1, str2 és az strn összekapcsolása és akár nem karakterlánc argumentumok.

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

6. INITCAP (str)

A karakterlánc nagybetűs, azaz minden szó első betűje nagybetűkkel, a többi betű kisbetűs. A szavakat nem alfanumerikus elválasztók határozzák meg.

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

7. Alsó () és felső ()

Konvertál egy karakterláncot kis- és nagybetűkké.

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

8. BAL (str, len) / JOBB (str, len)

Visszaadja a bal szélső és a jobb szélső karaktereket a str karakterláncból. Ha a len negatív, akkor visszaadja a karakterláncot, kivéve a bal vagy a jobb szélső karaktereket.

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

9. HOSSZ (str) / LENGTH (str, kódolás)

Visszaadja a karakterlánc karakterláncának hosszát. Ez ellentétben az SQL függvény működésével. Ha meghatározásra kerül, akkor a kódolás megadja az adott kódolás hosszát.

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

10. OCTET_LENGTH (str)

Kiszámítja a karakterlánc hosszát bájtban.

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

Ez nagyon hasonlít a LENGTH és a CHAR_LENGTH funkciókra. A különbség akkor jelentkezik, ha többbájtos karakterek vannak benne.

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

Ez azért történik, mert az Euro (€) jel 3 bájtot foglal el a memóriában.

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

Beszúr az al-karakterláncot a karakterlánc pad 0. pozíciójától a karakterlánc elejére és végére, amíg a kapott karakterlánc len karaktereket nem tartalmaz.

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, karakter) / RTRIM (str, karakter) / TRIM (str, karakter)

A karakterláncot adja vissza, miután kivágta a char (ek) előfordulásait balról, jobbról vagy mindkét végről. Ha a karakter nem szerepel az argumentumban, a szóközök levágásra kerülnek.

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. POZÍCIÓ (sztr. Str.) / STRPOS (str., Sztr.)

Megtalálja a substring pozícióját a str string-ben. Ne feledje, hogy az index 1-rel kezdődik a PostgreSQL-ben. 0 eredményt ad, ha nem található találat.

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

14. QUOTE_IDENT (str) / QUOTE_LITERAL (str)

Ez a lekérdezés idézi és visszavonja a str. A legtöbb speciális karakter megduplázódik.

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

15. KICSERÉLÉS (str, from_str, to_str)

Kicseréli az alsó karakterlánc összes előfordulását a (z) str sztring karakterláncban a to_str alhúrra. Nagybetű-érzékeny.

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

16. REVERSE (str)

Fordítja a str.

SELECT FirstName, REVERSE(FirstName) from Person

17. REGEXP_MATCHES (str, minta)

Visszatér a POSIX Regex mintával megegyező összes szálakhoz.

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

18. REGEXP_REPLACE (str, minta, newstr)

A POSIX Regex mintázatához tartozó összes szálakat lecseréli az newstr.

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

19. REGEXP_SPLIT_TO_ARRAY (str, minta)

Felosztja a str karakterláncot a POSIX Regex mintával elválasztott alsorozatok tömbjével. Az E '\\ s +' minta egy vagy több üres helyet jelent.

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

20. REGEXP_SPLIT_TO_TABLE (str, minta)

Felosztja a str karakterláncot a POSIX Regex mintával elválasztott alsorozatok táblázataként.

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

21. SUBSTRING (str pos pos len len)

Visszaad egy részsávot a str sztringből a len hosszúságú pozíciójától kezdve.

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

22. SUBSTRING (a posix_pattern-től) / SUBSTRING (a sql_pattern-től a meneküléshez)

Visszaad egy alsávot a str karakterláncból, amely megegyezik a POSIX Regex vagy az SQL Regex értékkel. A Regex nagy, csodálatos és rendkívül hasznos téma a számítógépekben. Ajánlatos megszerezni a Regex mintákat, mielőtt azok véletlenül megvalósulnának.

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

Következtetés - PostgreSQL karakterláncfunkciók

Összefoglalva tehát: ezek a többi beépített funkcióval együtt teszik a PostgreSQL-t olyan erõssé. A regex minták beépítése több energiát ad hozzá. Miután megtanultak és elsajátították a Regex minták írásának művészetét, sokkal szórakoztatóbb az adatbázis használata.

Ajánlott cikkek

Ez egy útmutató a PostgreSQL karakterlánc-funkciókhoz. Itt megvitattuk, hogyan lehet string-függvényeket használni a PostgreSQL programozásban, példák segítségével. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. Karakterlánc-funkciók példákkal a Java-ban
  2. Hogyan telepíthetem a PostgreSQL-t?
  3. PostgreSQL interjúkérdések
  4. Regex funkciók a Pythonban (példa)

Kategória: