列转多行---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--一列转多行--数组分割展开

数据分析--积累--presto--一列转多行--数组分割展开

MySQL关联表多行转多列?

Flink SQL 如何实现列转行 ?