JSON_REMOVE вложенный элемент, MySQL - PullRequest
0 голосов
/ 05 июня 2018

довольно просто, у меня есть следующий JSON в MySQL:

{"car" : ["honda","ferrari"]}

Я хочу использовать JSON_REMOVE только для "honda", но я не могу найти, как сформулировать путь.Я думал, что это будет примерно так, но это удалит все машины.

`update users set cars =
    JSON_REMOVE(cars, '$."car"', '$."honda"')
    where idUsers = 1;`

по какой-то причине документы MySQL не охватывают это, насколько мне известно.Любая помощь приветствуется.

1 Ответ

0 голосов
/ 05 июня 2018

Попробуйте:

SELECT
  JSON_REMOVE(
    @`json`,
    JSON_UNQUOTE(
      JSON_SEARCH(@`json`, 'one', @`car_to_delete`, NULL, '$.car[*]')
    )
  );

См. dbfiddle .

...