列转多行---Mysql
Posted jiujiujiujiujiujiu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了列转多行---Mysql相关的知识,希望对你有一定的参考价值。
数据准备:
CREATE TABLE test ( num varchar(100), score varchar(100) );
INSERT INTO test(num, score) VALUES(\'1\', \'2,5,4\');
INSERT INTO test(num, score) VALUES(\'2\', \'4\');
INSERT INTO test(num, score) VALUES(\'3\', \'2,5,5,3,4\');
原始:
列转多行:
select SUBSTRING_INDEX(SUBSTRING_INDEX(score , \',\' , b.help_topic_id+1 ) , \',\' , -1)
from test a
join mysql.help_topic b
on b.help_topic_id<LENGTH(a.score)-LENGTH(REPLACE(a.score, \',\' ,\'\'))+1
结果:
以上是关于列转多行---Mysql的主要内容,如果未能解决你的问题,请参考以下文章
PCB SQL MS 将多行有序数据转为一行数据(一列转一行)
数据分析--积累--presto--一列转多行--数组分割展开