我有一个如下所示的表,其中cities是JSON
列
| 识别码|城市|
| - -|- -|
| 一个|[“马德里]|
| 2个|[伦敦马德里巴黎]|
| 三个|[“伦敦”,“巴黎”]|
| 四个|[“伦敦”]|
| 五个|[“罗马”,“柏林”]|
我想将列转换为行,这样所有城市都有自己行
| 城市|
| - -|
| 马德里|
| 伦敦|
| 巴黎|
| 罗马|
| 柏林|
我试过
SELECT distinct JSON_VALUE(JSON_EXTRACT(cities, '$[*]'), '$[*]') as cities FROM table_cities
但我得到了这个
| 城市|
| - -|
| 马德里|
| 空值|
| 伦敦|
1条答案
按热度按时间mzaanser1#
1.如果您使用的是MySQL 8.0版,您可以尝试使用
JSON_TABLE
函数(在dbfiddle上测试)1.对于MariaDB 10.4.2,您可以尝试此操作。(在dbfiddle上测试)