Как разложить неассоциативный массив json в mysql по строкам в select?

В строках БД есть однотипный json, состоящий из одного или нескольких элементов массива, в каждом элементе есть a и b
Пример двух строк в БД:
{[{"a": 5,"b": 6}]}

{[{"a": 1,"b": 2},{"a": 3,"b": 4}]}


Нужно получить

a b
5 6
1 2
3 4

Т.е. как видно, в двух строках БД три элемента массива, на выходе получаем три строки, которые и нужно получить.
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
Alex_Geer
@Alex_Geer
System Engineer
SELECT jt.a, jt.b
FROM my_table, 
JSON_TABLE(json_column, '$[*]' COLUMNS (
  a INT PATH '$.a',
  b INT PATH '$.b'
)) as jt;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы