使用分隔符提取 MySQL 子字符串
可以使用 SUBSTRING_INDEX 函数从 MySQL 中的字符串中提取子字符串。此函数允许您指定分隔符来分隔子字符串以及要提取的子字符串的位置。
例如,请考虑下表:
item_code | name | colors |
---|---|---|
102 | ball | red,yellow,green |
104 | balloon | yellow,orange,red |
将颜色提取为单独的子字符串,您可以使用以下查询:
SELECT item_code, name, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 1), ',', -1) AS color_first, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 2), ',', -1) AS color_second FROM Product;
SUBSTRING_INDEX 函数在此查询中应用两次。第一次用于查找第一个子字符串,第二次用于从第一次应用的结果中提取剩余的子字符串。
结果输出如下:
item_code | name | color_first | color_second |
---|---|---|---|
102 | ball | red | yellow |
104 | balloon | yellow | orange |
请注意,获取所有子字符串的查询的更详细版本将是:
SELECT item_code, name, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 1), ',', -1) AS color_first, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 2), ',', -1) AS color_second, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 3), ',', -1) AS color_third FROM Product;
This较长的查询使用与较短的查询相同的模式从颜色字段中检索所有子字符串。
以上是如何从 MySQL 中的分隔字符串中提取子字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!