JSON_REMOVE嵌套项,MySQL

时间:2018-06-04 21:08:34

标签: mysql json path nested

非常简单,我在MySQL中有以下JSON:

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

我想单独在“honda”上使用JSON_REMOVE,但我找不到如何制定路径。我认为它会像这样,但它会删除所有汽车。

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

由于某种原因,MySQL文档并未涵盖我的知识。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

尝试:

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

请参阅dbfiddle

答案 1 :(得分:0)

请尝试:-

JSON_REMOVE(value,'$.car.honda')