MySQL中GROUP_CONCAT的反義詞是什么?我似乎很反對這個問題,我的數(shù)據(jù)格式如下:+----+----------------------+| id | colors |+----+----------------------+| 1 | Red,Green,Blue || 2 | Orangered,Periwinkle |+----+----------------------+但我希望它的格式如下:+----+------------+| id | colors |+----+------------+| 1 | Red || 1 | Green || 1 | Blue || 2 | Orangered || 2 | Periwinkle |+----+------------+有沒有辦法做到這一點?什么是這種操作甚至叫做?
3 回答

達(dá)令說
TA貢獻(xiàn)1821條經(jīng)驗 獲得超6個贊
你可以使用這樣的查詢:
SELECT id, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', n.digit+1), ',', -1) colorFROM colors INNER JOIN (SELECT 0 digit UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3) n ON LENGTH(REPLACE(colors, ',' , '')) <= LENGTH(colors)-n.digitORDER BY id, n.digit
請看這里的小提琴。請注意,此查詢每行最多支持4種顏色,您應(yīng)該更新子查詢以返回4個以上的數(shù)字(或者您應(yīng)該使用包含10或100個數(shù)字的表)。

收到一只叮咚
TA貢獻(xiàn)1821條經(jīng)驗 獲得超5個贊
如果分隔符是數(shù)據(jù)的一部分但是由雙引號嵌入,那么我們?nèi)绾尾鸱炙?/p>
例如,第二個,第二個,第二個
它應(yīng)該是第一秒,第三
添加回答
舉報
0/150
提交
取消