mysql原生sql处理,按逗号拆分列为多行
举例:
id | value |
1 | 1,2,3,4 |
2 | 2,3,4,5,6 |
拆分成:
id | value |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
select distinct substring_index(substring_index(a.value,',',b.help_topic_id+1),',',-1) from table a join mysql.help_topic b on b.help_topic_id < (length(a.value) - length(replace(a.value,',',''))+1)
distinct:去重复操作
a.value:表别名.需要拆分的字段名
table a:表名 别名
help_topic:自增长表