Mnoho programátorů pracujících s SQL se potýká s otázkou, jak rozdělit řetězce přímo na SQL serveru. Tato operace může být pro některé uživatele matoucí. Proto v tomto článku prozkoumáme několik jednoduchých a srozumitelných metod, jak rozdělit SQL řetězec pomocí oddělovače. Důkladně si prostudujte následující kroky, abyste mohli efektivně provádět rozdělování řetězců na vašem SQL serveru.
Čtyři způsoby rozdělení řetězce pomocí oddělovače v SQL
Existují čtyři hlavní způsoby, jak rozdělit řetězec obsahující oddělovače. V závislosti na vašich preferencích a konkrétní situaci, můžete použít jakoukoli z těchto metod, abyste dosáhli požadovaného výsledku na vašem SQL serveru. Pojďme se na ně podívat blíže!
Metoda 1: Základní rozdělení řetězce SQL
Tato metoda je jednou z nejjednodušších a využívá funkci SPLIT(). Tato funkce vyžaduje dva argumenty: řetězec, který chcete rozdělit, a oddělovač. Funkce pak rozdělí řetězec na základě zadaného oddělovače.
Syntaxe:
SPLIT(hodnota[, oddělovač])
1. Pokud jako oddělovač použijete čárku (,), funkce ve výchozím nastavení rozdělí řetězec. Důležité je, že musíte specifikovat oddělovač v bajtech.
Příklad:
SELECT
SPLIT('1,2,3,4,5,6,7', ',') AS arr;
Výstup:
arr "[1,2,3,4,5,6,7]"
2. Pokud zadáte prázdný oddělovač, funkce vrátí pole znaků UTF-8 z původního řetězce. V následujícím příkladě rozdělujeme řetězec podle mezer, které v tomto případě slouží jako oddělovače.
Příklad (pole řetězců):
SELECT
SPLIT('p q r s t u v', ' ') AS arr;
Výstup:
arr "[p,q,r,s,t,u,v]"
3. Pokud jako vstup zadáte prázdný řetězec, funkce vrátí prázdné pole.
Příklad:
SELECT
SPLIT('', '') AS arr;
Výstup:
arr []
Metoda 2: Rozdělení řetězce pomocí SQL Serveru
Pro rozdělení řetězce s oddělovači na SQL serveru můžete použít funkci STRING_SPLIT().
Syntaxe:
STRING_SPLIT (řetězec , oddělovač )
Příklad:
SELECT
VALUE
FROM
STRING_SPLIT('m,n,o,p,q,r', ',');
Výstup:
VALUE -------------------- m n o p q r
Metoda 3: Rozdělení řetězce v PostgreSQL
Funkce SPLIT_PART() umožňuje rozdělit libovolný řetězec v PostgreSQL. Tato funkce vyžaduje jako vstup řetězec, který se má rozdělit, oddělovač, a pozici, kterou chcete získat.
Poznámka: Parametr pozice musí být kladné celé číslo, počínaje 1.
Syntaxe:
SPLIT_PART(řetězec, oddělovač, pozice)
Příklad:
select split_part(‘h,e,l,l,o’, ‘,’, 3);
Výstup:
split_part l
Metoda 4: Rozdělení řetězce v MySQL
V MySQL můžete použít funkci SUBSTRING_INDEX() k rozdělení řetězce pomocí oddělovače. Tato funkce vyžaduje řetězec, oddělovač a počet výskytů oddělovače. Funkce vrátí podřetězec, který odpovídá zadanému počtu výskytů oddělovače.
Syntaxe:
SUBSTRING_INDEX(řetězec, oddělovač, počet)
Příklad:
SELECT SUBSTRING_INDEX('q,w,e,r,t,y', ',', 6);
Výstup:
q,w,e,r,t,y
Doufáme, že jste nyní lépe pochopili, jak rozdělit řetězec v SQL pomocí oddělovače. Poskytli jsme vám čtyři různé metody spolu s jejich syntaxí, které by vám měly pomoci. Pokud máte jakékoli dotazy k tomuto článku nebo návrhy na další témata, o kterých byste se rádi dozvěděli, neváhejte je sdílet v sekci komentářů níže. Budeme rádi za vaši zpětnou vazbu.