4 způsoby rozdělení řetězce pomocí oddělovače v SQL

Photo of author

By etechblogcz

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.