如果我有以下文件,例如: { “作”:“宝马”, “make1”:“奥迪” }
当我执行UPDATE查询更新翻译SET make2
=“MERCEDES”WHERE META()。id =“CARS”时,查询没有问题,并且make2被添加到文档中。
当我执行UPDATE查询时更新翻译SET make2
。MODEL
=“CLS”,make2
。MODIFICATION
=“500”WHERE META()。id = " CARS"
查询返回“sucess”,但没有添加任何内容。如果make2已经存在,则所有内容都按预期更新,只有在对象不存在时才会出现问题。
答案 0 :(得分:1)
如果父属性是JSON对象,则只能更新嵌套属性。如果父属性设置为字符串,则更新将不会成功,与您所说的相反。
这将有效:
UPDATE Translations USE KEYS "CARS"
SET make2 = {};
UPDATE Translations USE KEYS "CARS"
SET make2.MODEL = "CLS", d.make7.MODIFICATION = "500";
或者您可以在一行中执行此操作:
UPDATE Translations USE KEYS "CARS"
SET make2 = {}, make2.MODEL = "CLS", d.make7.MODIFICATION = "500";