我有這樣一個表:如何使用MySQL將記錄的值內爆到多行?
// mytable
+----+--------+-------------------+
| id | word | numbers |
+----+--------+-------------------+
| 1 | hello | 1<br>2<br>3<br> |
| 2 | how | 12<br>15<br> |
| 3 | are | 453<br>1<br> |
| 4 | you | 3<br>33<br>453<br>|
+----+--------+-------------------+
而且我想這個輸出:
// mynewtable
+----+--------+---------+
| id | word | numbers |
+----+--------+---------+
| 1 | hello | 1 |
| 2 | hello | 2 |
| 3 | hello | 3 |
| 4 | how | 12 |
| 5 | how | 15 |
| 6 | are | 453 |
| 7 | are | 1 |
| 8 | you | 3 |
| 9 | you | 33 |
| 10 | you | 453 |
+----+--------+---------+
我能做到這一點使用PHP。首先,我必須獲取所有行並通過<br>
將它們分解,然後再次插入它們。但是現在我想知道,有沒有更好的解決方案? (特別是使用純的MySQL)
可能這將是一個很好的時間來重構一個相當糟糕設計一塊數據庫 – RiggsFolly
的。如果你能代替'
'用一個單一的字符然後[我可以解決這個純粹的MySQL?加入';'列中的分隔值](http://stackoverflow.com/a/33806675/3184785)也許很有趣。您可以更改功能以使用'
'作爲分隔符。它會給你想要的輸出。 –
什麼@RiggsFolly說 - 時間來重構和修復的東西。設計第一個模型的人不知道如何使用數據庫。你可以破解並試圖讓它工作,在這個過程中遇到很多問題,或者你可以簡單地創建一個存儲信息的表格,就像你在輸出示例中顯示的一樣。祝你好運,我希望你決定以正確的方式做,因爲這將是最少的工作量。 – Mjh