在 ArangoDB 中,您可以使用 AQL(ArangoDB 查询语言)来更新键值存储中的文档
首先,确保您已经创建了一个名为 myDatabase 的数据库和一个名为 myCollection 的集合。在这个例子中,我们将使用一个简单的键值对,其中键是字符串,值是整数。
插入一个文档到 myCollection 集合中:
db.myCollection.save({ key: "exampleKey", value: 42 });
db.myCollection.update({ key: "exampleKey" }, { $set: { value: 99 } });
这将把键为 “exampleKey” 的文档的值更新为 99。
如果您想要更新多个文档,可以使用 arrayFilters 选项。例如,假设您有一个包含多个键值对的文档,您想要更新其中的一部分:
db.myCollection.save({
keys: ["key1", "key2", "key3"],
values: [10, 20, 30],
otherProperty: "someValue"
});
要更新 keys 数组中的前两个元素,您可以执行以下操作:
db.myCollection.updateMany(
{ keys: { $in: ["key1", "key2"] } },
{ $set: { values: { $concatArray: ["$values", [40, 50]] } } },
{ arrayFilters: [ { $in: ["$keys", ["key1", "key2"]] } ] }
);
这将把 keys 数组中包含 “key1” 和 “key2” 的文档的 values 数组更新为 [10, 20, 40, 50]。