Zistite, ako môžete manipulovať s textovými reťazcami na databázovom serveri a nie v základnej aplikácii.
Kľúčové informácie
- Kľúčové veci:
- Funkcie reťazca SQL sú preddefinované funkcie používané na manipuláciu s hodnotami reťazcov a vykonávanie rôznych databázových operácií.
- Medzi bežne používané funkcie reťazca patria CONCAT(), SUBSTRING(), LENGTH(), UPPER(), TRIM(), REPLACE(), INSTR(), RIGHT(), LEFT(), INSERT() a REPEAT().
- Naučiť sa funkcie reťazcov SQL je nevyhnutné pre prácu s relačnými databázami a efektívnu manipuláciu a ukladanie údajov.
SQL (Structured Query Language) má mnoho vstavaných funkcií. Niektoré zo široko používaných sú reťazcové funkcie.
Reťazce sú dátový typ, ktorý sa používa na ukladanie znakovo orientovaných informácií. Funkcie reťazca SQL sú preddefinované funkcie. Môžete ich použiť na manipuláciu s hodnotami reťazcov a vykonávanie rôznych databázových operácií.
Reťazcové funkcie spracovávajú a vracajú výsledky, ktorými môžu byť reťazce alebo číselné hodnoty. Pri práci s SQL budete používať nasledujúce štandardné reťazcové funkcie.
1. CONCAT()
CONCAT() je široko používaná funkcia na serveroch SQL. Budete ho používať na spojenie dvoch alebo viacerých reťazcov do jedného reťazca. Funkcia berie reťazce ako vstupy a spája ich do jednoreťazcovej hodnoty. Ako argumenty prijíma reťazce a oddeľovač.
Syntax je:
CONCAT(str1, str2)
Pozrite si nasledujúci príklad:
SELECTCONCAT('MakeUseOf', 'website')
Čo vráti hodnotu „MakeUseOfwebsite“.
Príkaz SELECT je jedným z najviac bežne používané SQL príkazy. Využijete ho na prístup k záznamom z databázových tabuliek.
Vybrané údaje môžete získať podľa podmienok špecifikovaných vo funkcii. Môžete použiť aj iné príkazy ako ORDER BY, WHERE, GROUP BYatď. na manipuláciu s databázami.
Ďalšou formou funkcie CONCAT() je CONCAT_WS(). Táto funkcia berie reťazce ako vstupy a spája ich do jedného reťazca. Ale dáva medzi nimi oddeľovač. Oddeľovač je zvyčajne prvým argumentom.
Napríklad:
SELECTCONCAT_WS(',', 'MakeUseOf', 'website')
Návratová hodnota bude „MakeUseOf, website“.
2. SUBSTRING()
Funkcia SUBSTRING() vracia časť reťazca začínajúcu od uvedenej pozície. Vyžaduje tri argumenty: reťazec, začiatok a dĺžka. Dĺžka je voliteľná.
syntax:
SUBSTRING(str, start, len)
Počiatočná pozícia začína na indexe jedna (nie na indexe nula, ako v niektorých programovacích jazykoch). Dĺžka (len) udáva počet znakov, ktoré sa majú extrahovať. Dĺžka musí byť vždy kladné číslo.
Napríklad:
SELECTSUBSTRING('abcde', 3, 2)
Vráti hodnotu "cd".
3. DĹŽKA()
Funkcia SQL LENGTH() udáva dĺžku reťazca. Berie reťazec ako argument. Syntax je:
LENGTH(str)
Napríklad, ak chcete zistiť dĺžku mena „Jones“, napíšete funkciu takto:
SELECTLENGTH('Jones')
Návratná hodnota je 5.
4. UPPER()
Táto funkcia zmení všetky znaky v reťazci na veľké písmená. V niektorých databázach je tiež známy ako UCASE(). Syntax je:
UPPER(str)
Napríklad skonvertujte vetu "Milujem SQL tutoriály." na veľké písmená.
SELECTUPPER('I love SQL Tutorials!')
Návratová hodnota je "Milujem SQL TUTORIALS!"
SQL má tiež funkciu LOWER(). Táto funkcia konvertuje reťazce na malé písmená, čo je opak funkcie UPPER().
5. TRIM()
Funkcia TRIM() odstraňuje medzery okolo reťazca. Berie reťazec ako argument. Syntax je:
TRIM(str)
Napríklad:
TRIM(' abcd ')
Návratová hodnota bude "abcd".
Môžete tiež použiť TRIM() na odstránenie iných znakov z reťazca s nasledujúcou syntaxou:
TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
Funkcia obsahuje argumenty uvádzajúce, kde má pôsobiť. Napríklad BOTH sa vzťahuje na predpony aj prípony reťazca. Zatiaľ čo LEADING sa vzťahuje na predponu a TRAILING na príponu, resp. Odstránená časť reťazca je tiež zahrnutá [remstr].
Napríklad:
SELECTTRIM(LEADING'a'FROM'aaaaabcdaaa')
Vráti "bcdaaa".
Môžete tiež použiť funkciu RTRIM() na odstránenie znakov z pravej strany reťazca a funkciu LTRIM() na odstránenie znakov z ľavej strany.
6. NAHRADIŤ()
Funkcia REPLACE() nahradí podreťazec v reťazci novým podreťazcom. syntax:
REPLACE(original_string, substring_to_replace, new_substring)
Pôvodný_reťazec je vstupný reťazec, v ktorom chcete vykonať nahradenie. Substring_to_replace je podreťazec, ktorý nahrádzate v original_string. A new_substring je reťazec, ktorý umiestnite do pôvodného_reťazca.
Napríklad:
SELECTREPLACE('MICROHARD', 'HARD', 'SOFT')
Výsledkom bude „MICROSOFT“.
7. INSTR()
Na nájdenie počiatočnej pozície podreťazca v rámci reťazca použite funkciu INSTR(). Funguje podobne ako funkcia CHARINDEX() na serveroch Oracle. Alebo všeobecná funkcia POSITION() použitá v PostgreSQL databázy.
Syntax je:
INSTR(string, substring [, start_position [, occurrence]])
Reťazec je pôvodný reťazec, ktorý chcete nájsť podreťazec. Podreťazec je to, čo v reťazci hľadáte. Počiatočná_pozícia (voliteľné) je miesto, kde začínate. Ak nie je zadaný, vyhľadávanie začne od začiatku reťazca.
Výskyt (voliteľný) je podreťazec, ktorý chcete nájsť. Ak výskyt nie je zadaný, funkcia vráti prvý výskyt. Funkcia vykonáva vyhľadávanie bez ohľadu na veľkosť písmen.
Napríklad:
SELECTINSTR('CORPORATE FLOOR', 'OR')
Výsledkom bude 2.
8. SPRÁVNY()
Táto funkcia vráti znaky reťazca úplne vpravo. Zahŕňa reťazec a dĺžku (dĺžku) znakov, ktoré sa majú vrátiť ako argumenty.
Syntax je:
RIGHT(str, len)
Napríklad:
RIGHT('abcdef', 3)
Návratová hodnota je "def".
SQL má tiež funkciu LEFT(), ktorá robí opak funkcie RIGHT(). Vráti prvé ľavé znaky reťazca.
syntax:
LEFT(str, len)
Napríklad:
SELECTLEFT('Microsoft', 5)
Výsledkom bude "Mikro".
9. INSERT()
Na zmenu reťazca vložením nového reťazca môžete použiť funkciu INSERT(). Môžete tiež zadať dĺžku a polohu na pridanie reťazca, ale toto sú voliteľné argumenty. Môžete tiež vkladať záznamy do databázové tabuľky pomocou SQL.
Syntax je:
INSERT(string, position, length, new_string)
Reťazec je pôvodný reťazec, ktorý chcete vložiť. Pozícia je miesto, kde by ste chceli vložiť nový _string. Dĺžka je počet znakov, ktoré sa majú nahradiť, a nový_reťazec je reťazec, ktorý sa má vložiť.
Pre nižšie uvedený SQL
SELECTINSERT('abcdefgh', 8, 2, 'IJKL')
Výsledkom je "abcdefgIJKL"
10. OPAKOVAŤ()
Použite funkciu REPEAT() na vynásobenie reťazca požadovaným číslom. Syntax je:
REPEAT(string, number)
Funkcia berie reťazec a počet opakovaní ako argumenty. Napríklad:
SELECTREPEAT('MUO', 3)
Výsledkom je "MUOMUOMUO."
Prečo sa učiť o funkciách reťazcov?
SQL poskytuje rôzne funkcie a operátory na prácu s reťazcami; toto sú len tie najbežnejšie.
Ak pracujete s relačnými databázami, je nevyhnutné naučiť sa funkcie reťazcov SQL. Znalosť týchto funkcií vám pomôže efektívne manipulovať a ukladať dáta.
Budete efektívne vykonávať čistenie, formátovanie a extrakciu údajov. Zvládnete aj porovnávanie reťazcov, triedenie a porovnávanie vzorov. Toto sú dnes základné zručnosti pri optimalizácii výkonnosti podniku.