检查CosmosDB集合中是否存在分区键

问题描述 投票:0回答:3

有没有办法检查分区键是否存在于 CosmosDB 的集合中?

例如,可用的分区键是美国的州,如WA、NY、MA等。CosmosDB是否有任何SQL语句来检查

NY
是否是集合中分区键的一部分?

假设如果不可能,有没有办法返回集合中的分区键列表?

database azure azure-cosmosdb
3个回答
1
投票

你可以尝试类似的事情

SELECT DISTINCT myColl.partitionKey FROM myColl

这将返回partitionKey的唯一值。将分区键替换为您集合中的分区键


0
投票

为了消除跨分区查询的需要(随着您管理的数据越多,它变得更加重要),您可以对具有您正在检查的分区键值的所有文档执行 SELECT COUNT 查询。检查 count 是否大于 0 并返回值。

这是一个适合您的示例的查询,其中您的分区键是

/state

SELECT VALUE COUNT(1) > 0
FROM c
WHERE c.state = "NY"

0
投票

您可以从 Azure 门户执行此操作。

  • 打开您的 Cosmos DB 帐户。
  • 转到“数据资源管理器”。
  • 选择您的数据库和容器。
  • 按“比例和设置”选项卡。

在这里,您应该看到“分区键(预览)”下定义的分区键

© www.soinside.com 2019 - 2024. All rights reserved.