MYSQL nemá žádné explode()
jako funkce vestavěná. Ale můžete snadno přidat podobnou funkci do vaší DB a pak ji použít z php dotazů. Tato funkce bude vypadat takto:
CREATE FUNCTION SPLIT_STRING(str VARCHAR(255), delim VARCHAR(12), pos INT)
RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(str, delim, pos),
CHAR_LENGTH(SUBSTRING_INDEX(str, delim, pos-1)) + 1),
delim, '');
Použití:
SELECT SPLIT_STRING('apple, pear, melon', ',', 1)
Výše uvedený příklad vrátí apple
.Myslím, že v MySQL nebude možné vrátit pole, takže musíte specifikovat, který výskyt se má vrátit, explicitně v pos
. Dejte mi vědět, jestli se vám to podaří.