У меня есть таблица с 1 столбцом типа JSON city в базе данных MySQL, в которой хранится массив JSON объектов города со следующей структурой:
{
"cities": [
{
"id": 1,
"name": "Mumbai",
"countryID": "9"
},
{
"id": 2,
"name": "New Delhi",
"countryID": "9"
},
{
"id": 3,
"name": "Abu Dhabi",
"countryID": "18"
}
]
}
Я хочу выбрать объекты из массива города, имеющие countryID = 90
но я застрял, так как массив объектов хранится в одном столбце city
, что мешает мне выполнить (*)
с WHERE JSON_CONTAINS(city->'$.cities', JSON_OBEJECT('countryID', '90'))
.
Мой запрос выглядит так, и я не получаюв любом месте,
SELECT JSON_EXTRACT(city, '$.cities') FROM MyTable WHERE JSON_CONTAINS(city->'$.cities', JSON_OBJECT('countryID', '90'))
Было бы очень полезно, если бы кто-то мог указать мне правильное направление или дать мне решение этой проблемы.
Спасибо