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更多的操作可参考官网