arangodb/aql 更新文档数组
arangodb/aql update array of documents
给定以下文档结构:
{
"active": "N",
"code": "AL",
"id": 3,
"mcc": "+355",
"name": "Arango",
"participant": [
{
"actor": {
"reference": "Patient/example",
"display": "Peter James Chalmers"
},
"required": "required",
"status": "not booked"
}
]
}
我想将参与者数组[*].status 从“未预订”更新为“已预订”。
你能告诉我更新数组值的 Arango 查询吗?
这是一个使用 inline projection 的解决方案:
FOR doc IN coll
FILTER doc._key == "<key>"
UPDATE doc WITH {
participant: doc.participant[* RETURN MERGE(CURRENT, {status: "booked"})]
} IN coll
请注意,这会将 participant
数组中所有对象的状态设置为“已预订”。
给定以下文档结构:
{
"active": "N",
"code": "AL",
"id": 3,
"mcc": "+355",
"name": "Arango",
"participant": [
{
"actor": {
"reference": "Patient/example",
"display": "Peter James Chalmers"
},
"required": "required",
"status": "not booked"
}
]
}
我想将参与者数组[*].status 从“未预订”更新为“已预订”。
你能告诉我更新数组值的 Arango 查询吗?
这是一个使用 inline projection 的解决方案:
FOR doc IN coll
FILTER doc._key == "<key>"
UPDATE doc WITH {
participant: doc.participant[* RETURN MERGE(CURRENT, {status: "booked"})]
} IN coll
请注意,这会将 participant
数组中所有对象的状态设置为“已预订”。