MySQL 是一种关系型数据库管理系统,广泛用于存储和管理数据。在 MySQL 中,按照符号切割字符串通常是指使用 SUBSTRING_INDEX 函数或 REGEXP 正则表达式来分割字符串。
SUBSTRING_INDEX 函数非常高效。REGEXP 正则表达式来实现。SUBSTRING_INDEX 函数:SUBSTRING_INDEX(str, delim, count):根据分隔符 delim 分割字符串 str,count 指定返回从左边还是右边开始的子字符串。REGEXP 正则表达式:SUBSTRING_INDEX 函数假设我们有一个字符串 data,内容为 "apple,banana,grape",我们希望将其分割成多个水果名称。
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(data, ',', numbers.n), ',', -1) AS fruit
FROM
(SELECT 1 n UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5) numbers
WHERE
numbers.n <= LENGTH(data) - LENGTH(REPLACE(data, ',', '')) + 1;REGEXP 正则表达式假设我们有一个字符串 data,内容为 "apple|banana|grape",我们希望将其分割成多个水果名称。
SELECT
REGEXP_SUBSTR(data, '[^|]+', 1, level) AS fruit
FROM
dual
CONNECT BY
REGEXP_SUBSTR(data, '[^|]+', 1, level) IS NOT NULL;SUBSTRING_INDEX 函数会返回原始字符串。SUBSTRING_INDEX 函数可能不够用。REGEXP 正则表达式来处理复杂的字符串分割。希望这些信息对你有所帮助!