mysql將一行變成多行的方法:1、將一行變成多行,代碼為【substring_index(substring_index( a.rn,',',b.help_topic_id + 1 ),',' ,- 1)】;2、將多列變成多行。
成都創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網(wǎng)站設計、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的鞏留網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
mysql將一行變成多行的方法:
把
轉(zhuǎn)成
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, ',', '') ) + 1)
圖A轉(zhuǎn)成圖B
圖a
圖b
SELECT substring_index(substring_index( a.rn,',',b.help_topic_id + 1 ), ',' ,- 1 ) AS rn FROM (select SUBSTR(GROUP_CONCAT( REPEAT(CONCAT(number,','),fre) SEPARATOR ''),1,LENGTH(GROUP_CONCAT( REPEAT(CONCAT(number,','),fre) SEPARATOR ''))-1) as rn from numbers ) a JOIN mysql.help_topic b ON b.help_topic_id < (length(a.rn) - length( replace(a.rn, ',', '') ) + 1)
更多相關免費學習推薦:mysql教程(視頻)