MySQL nie zawiera funkcji do dzielenia rozdzielanego ciągu. Jednak bardzo łatwo jest stworzyć własną funkcję.
Funkcja definiowania przez użytkownika:
CREATE [AGGREGATE] FUNCTION function_name
RETURNS {STRING|INTEGER|REAL|DECIMAL}
Funkcja:
CREATE FUNCTION SPLIT_STR(
x VARCHAR(255),
delim VARCHAR(12),
pos INT
)
RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
delim, '');
Użycie:
SELECT SPLIT_STR(string, delimiter, position)