我可以为 Azure Cosmos DB 编写 UPDATE
语句吗? SQL API 支持查询,但是更新呢?
特别是,我希望更新文档而不必检索整个文档。我有文档的 ID,并且知道文档中要更新的确切路径。例如,假设我的文档是
{
"id": "9e576f8b-146f-4e7f-a68f-14ef816e0e50",
"name": "Fido",
"weight": 35,
"breed": "pomeranian",
"diet": {
"scoops": 3,
"timesPerDay": 2
}
}
我想将 diet.timesPerDay
更新为 1,其中 ID 为 “9e576f8b-146f-4e7f-a68f-14ef816e0e50”
。我可以使用 Azure SQL API 执行此操作而不完全替换文档吗?
最佳答案
Cosmos DB SQL 语言仅支持 Select
语句。
不支持通过 sql 语言或 SQL API 部分更新文档。
人们已经明确表示这是他们想要的功能,因此对此的请求得到了高度赞扬,可以在这里找到:https://feedback.azure.com/forums/263030-azure-cosmos-db/suggestions/6693091-be-able-to-do-partial-updates-on-document
微软已经开始解决这个问题,所以你唯一能做的就是等待。
关于Azure Cosmos DB SQL API UPDATE 语句 - 不替换整个文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56155514/