相关疑难解决方法(0)

通过Query Explorer从条件中删除CosmosDB中的文档

什么是查询或其他一些快速方法来删除集合中where条件匹配的所有文档?
我想要的东西,DELETE * FROM c WHERE c.DocumentType = 'EULA'但显然,它不起作用.

注意:我不是在寻找任何C#实现.

azure azure-cosmosdb

14
推荐指数
3
解决办法
2万
查看次数

Azure Cosmos DB SQL API UPDATE 语句 - 不要替换整个文档

我可以UPDATE为 Azure Cosmos DB编写语句吗?SQL API 支持查询,但更新呢?

特别是,我希望更新文档而不必检索整个文档。我有文档的 ID,我知道我想在文档中更新的确切路径。例如,假设我的文档是

{
  "id": "9e576f8b-146f-4e7f-a68f-14ef816e0e50",
  "name": "Fido",
  "weight": 35,
  "breed": "pomeranian",
  "diet": {
    "scoops": 3,
    "timesPerDay": 2
  }
}
Run Code Online (Sandbox Code Playgroud)

我想更新diet.timesPerDay到 ID 所在的 1 "9e576f8b-146f-4e7f-a68f-14ef816e0e50"。我可以在不完全替换文档的情况下使用 Azure SQL API 做到这一点吗?

azure azure-cosmosdb azure-cosmosdb-sqlapi

10
推荐指数
3
解决办法
2万
查看次数

Azure Cosmos DB 中的更新查询

是否可以使用类似 SQL 的逻辑在 Azure Cosmos DB 中使用带有 where 子句的更新查询,就像在这个语句中一样?

Update Tasks set Tasks.name='Update My Task' 
where Tasks.categoryId='695c9592-a42b-48a9-b266-1cfd55490a0a'
and Tasks.taskOrder >=1
Run Code Online (Sandbox Code Playgroud)

我看到没有等效的 SQL 查询,但是有没有一种方法可以执行逻辑上等效于有效 UPDATE 的操作——PATCH,而不是 PUT?

c# azure azure-cosmosdb

5
推荐指数
0
解决办法
6479
查看次数

Cosmos DB-使用Python删除文档

这个SO问题中,我了解到无法使用SQL删除Cosmos DB文档。

使用Python,我相信我需要该DeleteDocument()方法。这就是我获取所需的文档ID的方式(我相信),然后调用该DeleteDocument()方法。

# set up the client
client = document_client.DocumentClient()

# use a SQL based query to get a bunch of documents
query = { 'query': 'SELECT * FROM server s' }
result_iterable = client.QueryDocuments('dbs/DB/colls/coll', query, options)

results = list(result_iterable);

for x in range(0, len (results)):
    docID = results[x]['id']
Run Code Online (Sandbox Code Playgroud)

现在,在这个阶段我想打电话给DeleteDocument()。输入到其中的document_linkoptions

我可以定义document_link

document_link = 'dbs/DB/colls/coll/docs/'+docID
Run Code Online (Sandbox Code Playgroud)

并成功调用ReadAttachments()例如,其输入与相同DeleteDocument()

但是,当我这样做时,我会得到一个错误...

The partition key supplied in …
Run Code Online (Sandbox Code Playgroud)

python azure azure-cosmosdb

2
推荐指数
1
解决办法
1977
查看次数