首页 > 数据库 > mysql教程 > mysql如何将一行变成多行

mysql如何将一行变成多行

coldplay.xixi
发布: 2020-09-28 11:04:48
原创
8391 人浏览过

mysql将一行变成多行的方法:1、将一行变成多行,代码为【substring_index(substring_index( a.rn,',',b.help_topic_id + 1    ),',' ,- 1)】;2、将多列变成多行。

mysql如何将一行变成多行

mysql将一行变成多行的方法:

把     

44c937c8cb0c09476feb5eb1491e43b.png

转成

319e6ba2e18fdb554f76d45f15250a0.png

SELECT
    substring_index(substring_index( a.rn,',',b.help_topic_id + 1    ),',' ,- 1) AS rn
FROM
    (select '1,2,3,4' as rn) a  
JOIN mysql.help_topic b ON b.help_topic_id <
(length(a.rn) - length( replace(a.rn, &#39;,&#39;, &#39;&#39;)  ) + 1)
登录后复制

图A转成图B

19275fe886e86f672f00b79d7057937.png

图a

6f3e1d38d92ed1e69418732db8a3097.png

图b

SELECT
    substring_index(substring_index( a.rn,&#39;,&#39;,b.help_topic_id + 1    ),  &#39;,&#39; ,- 1    ) AS rn
FROM
    (select SUBSTR(GROUP_CONCAT( REPEAT(CONCAT(number,&#39;,&#39;),fre) SEPARATOR &#39;&#39;),1,LENGTH(GROUP_CONCAT( REPEAT(CONCAT(number,&#39;,&#39;),fre) SEPARATOR &#39;&#39;))-1) as rn  from numbers ) a  
JOIN mysql.help_topic b ON b.help_topic_id <
(length(a.rn) - length( replace(a.rn, &#39;,&#39;, &#39;&#39;)  ) + 1)
登录后复制

更多相关免费学习推荐:mysql教程(视频)

以上是mysql如何将一行变成多行的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板