MYSQL har ingen explode()
lignende funktion indbygget. Men du kan nemt tilføje lignende funktion til din DB og derefter bruge den fra php-forespørgsler. Den funktion vil se sådan ud:
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, '');
Brug:
SELECT SPLIT_STRING('apple, pear, melon', ',', 1)
Eksemplet ovenfor vil returnere apple
.Jeg tror, at det vil være umuligt at returnere array i MySQL, så du skal angive, hvilken forekomst der skal returneres eksplicit i pos
. Fortæl mig, hvis det lykkes dig at bruge det.