所以更新应该在
_id =“4617a874-9a8a-4b57-b9f6-6c0c83e4c0f8”
2._type =“AssetDef”
3.维护_id与_id =“50a0c62b-f7b2-4fba-ac51-19e0976c8760”相匹配,然后更新:值“mos_fixDate":false to mos_fixDate: true。
{
“_id”:“4617a874-9a8a-4b57-b9f6-6c0c83e4c0f8”,
_type:“AssetDef”,
“维修”:[
{
"_id":“50a0c62b-f7b2-4fba-ac51-19e0976c8760”,
描述:“nekaj6”,
“持续时间”:
maintenanceName:“nekaj6”,
"mos_fixDate":假,
“期间”:3,
“类型”:“preventiveMaintenance”
},
{
“_id”:“fa022b93-c9f8-4c45-a33b-98d5c7ae74e3”,
“描述”:“马内基·内基”,
“持续时间”:“40”,
“标签”:“测试123”,
“maintenanceName”:“测试123”,
“期间”:1000,
“类型”:“preventiveMaintenance”
}
]
}
Expecing:
```javascript{
“_id”: **“4617a874-9a8a-4b57-b9f6-6c0c83e4c0f8”** = MATCHING ,
“_type”: “**AssetDef**”, = MATCHING
“maintenance”: [
{
**"_id": “50a0c62b-f7b2-4fba-ac51-19e0976c8760”,** = MATCHING
“description”: “nekaj6”,
“duration”: 3,
“maintenanceName”: “nekaj6”,
"mos_fixDate": **true**,
“period”: 3,
“type”: “preventiveMaintenance”
},
{
“_id”: “fa022b93-c9f8-4c45-a33b-98d5c7ae74e3”,
“description”: “ma neki neki”,
“duration”: “40”,
“label”: “test 123”,
“maintenanceName”: “test 123”,
“period”: 1000,
“type”: “preventiveMaintenance”
}
]
}我试过:
更新i4c使用键“维护”
SET maintenancei = {"mos_fixDate":true}
当a._id="50a0c62b-f7b2-4fba-ac51-19e0976c8760“返回维护时
和_id = "4617a874-9a8a-4b57-b9f6-6c0c83e4c0f8“
发布于 2022-03-24 14:30:54
UPDATE `i4c` AS u
SET u.`mos_fixDate` = true
FOR m IN u.maintenance
WHEN m._id = "50a0c62b-f7b2-4fba-ac51-19e0976c8760" END
WHERE u._id = "4617a874-9a8a-4b57-b9f6-6c0c83e4c0f8"
AND u._type = "AssetDef";例9在https://docs.couchbase.com/server/current/n1ql/n1ql-language-reference/update.html#update-for
https://stackoverflow.com/questions/71602128
复制相似问题