温馨提示×

mysql字符串转数组如何实现

小亿
566
2024-04-20 19:11:41
栏目: 云计算

在MySQL中,可以使用SUBSTRING_INDEX()函数将逗号分隔的字符串转换为数组形式。具体实现方法如下:

SET @str = 'apple,banana,orange'; -- 待转换的字符串

SELECT
    SUBSTRING_INDEX(SUBSTRING_INDEX(@str, ',', numbers.n), ',', -1) AS fruit
FROM
    (SELECT 1 n UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) numbers
WHERE
    n <= 1 + LENGTH(@str) - LENGTH(REPLACE(@str, ',', ''));

在上面的示例中,首先定义了一个变量@str,表示待转换的字符串。然后使用SUBSTRING_INDEX()函数和一个子查询来分割字符串,并将每个部分作为数组的一个元素输出。最后,通过WHERE子句来控制数组的长度。

执行上面的SQL语句,可以将字符串’apple,banana,orange’转换为数组形式:

+--------+
| fruit  |
+--------+
| apple  |
| banana |
| orange |
+--------+

1