更新 JSON 字段

在前面的示例中,我们看到了如何将混合数据类型插入到 JSON 字段中。如果我们想更新该字段怎么办?我们将在上一个示例中将 scheveningen 添加到名为 variations 的数组中。

UPDATE 
    myjson 
SET 
    dict=JSON_ARRAY_APPEND(dict,'$.variations','scheveningen') 
WHERE 
    id = 2;

笔记:

  1. 我们的 json 字典中的 $.variations 数组。 $符号代表 json 文档。有关 mysql 识别的 json 路径的完整说明,请参阅 https://dev.mysql.com/doc/refman/5.7/en/json-path-syntax.html
  2. 由于我们还没有关于使用 json 字段查询的示例,因此本示例使用主键。

现在如果我们做 SELECT * FROM myjson,我们会看到

+----+-----------------------------------------------------------------------------------------+
| `id` | dict                                                                                    |
+---+-----------------------------------------------------------------------------------------+
| `2`  | {"opening": "Sicilian", "variations": ["pelikan", "dragon", "najdorf", "scheveningen"]} |
+----+-----------------------------------------------------------------------------------------+
1 row in set (0.00 sec)