Как удалить значение в JSON-массиве MySQL?
options = {"cats": ["1", "10"], "tags": ["швалка", "букинг"]}
UPDATE `store`.`products`
SET `options` = JSON_REMOVE(`page_options` , '$.cats.10')
WHERE JSON_EXTRACT(`options` , '$.cats.*') = 10
Нужно, чтобы на выходе стало:
options = {"cats": ["1"], "tags": ["швалка", "букинг"]}
Подозреваю что у вас синтаксис JSON Path неверный. В данном случае чтобы удалить второй элемента массива cats нужен $[cats[1]]. Вам пригодится. Обратите внимание что MySQL имеет свой синтаксис JSON Path и много чего не поддерживает.
Если вам нужны сложные манипуляции над данными, то стоит хранить их в нативном формате БД, а нужные вам JSON генерировать на лету.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости