MySQL数据库中字段含逗号的数据,分隔成多条数据

将数据库表的字段进行切割,分成多条数据。

表数据:

test表

id name
1 张三,李四,王五
2 肖1,肖2


期望得到的查询结果为:

id                  name

1                   张三

1                   李四

1                   王五

2                   肖1

2                   肖2


sql语句:

select a.id,substring_index(substring_index(a.name,',',b.help_topic_id+1),',',-1) name 
from test a join
mysql.help_topic b
on b.help_topic_id < (length(a.name) - length(replace(a.name,',',''))+1)
order by a.id;

结果:

MySQL数据库中字段含逗号的数据,分隔成多条数据_第1张图片

你可能感兴趣的:(mysql)