У меня есть поле таблицы, которое может содержать одно или несколько строковых значений. Иногда он содержит только одно значение, иногда два, три, четыре или пять значений и т. Д.
Эти значения разделены запятыми. Как я могу сделать операцию разделения в MYSQL?
Пример:
1. 1,2,3,4,5,
2. 1,2,3,4,
3. 1,2,3,
4. 1
5. 1,2,3,4,5,6,7,8,
Эта функция требует целочисленного значения, содержащего информацию о длине:
CREATE FUNCTION SPLIT_STR(
x VARCHAR(255),
delim VARCHAR(12),
pos INT
)
RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
CHAR_LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
delim, "");