mysql从json字符串数组中提取内容
2022-01-18 本文已影响0人
Anson_1f2a
背景:数据库表中的列使用json字符串数组保存一组数据的id
目标:获取全部数据内的全部id并存入临时表中
数据:
| idx | id_arr |
|---|---|
| 1 | ["a", "b"] |
| 2 | ["c", "d", "e"] |
实现:
CREATE TEMPORARY TABLE all_id
as
SELECT DISTINCT get_id.*
FROM my_table,
JSON_TABLE(id_arr, '$[*]' COLUMNS (
id VARCHAR(5) PATH '$')
) get_id;
SELECT * FROM all_id;
返回:
| id |
|---|
| a |
| b |
| c |
| d |
| e |
说明:
sql中使用了JSON_TABLE进行操作json,关于mysql更多的操作可参考官网