在 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]
。