Azure cosmosdb 使用Cosmos DB如何仅查询分区键
我们有一组相关文档,它们共享同一个分区密钥。其思想是简单地将它们分组,应该是查询分区键并将它们缝合在一起。我错过了什么 所以 选择*from c,其中c.CustomerId=“500” 将返回3个文档、地址、销售和发票,它们都有一个名为CustomerId的属性,值为500 我知道它不是主键,我故意省略了行键 也许不拆分文档是答案,但是不同的文档具有不同的TTL,这将成为一个问题,不是吗( CustomerId是分区键 微软的文档说这是可能的(引用一个city=settle的例子) 那么,我遗漏了什么,对查询的一个完全误解是cosmos?(我可以说我知道一个分区键用于将相关数据拆分为分区)我不知道这使它成为一个不可查询的方面 我还可以用分区键和行键进行查询,没有问题 编辑2: 这项工作: 从c中选择*,其中c.CustomerId>“499”和c.CustomerId<“501”确定 因此,范围查询工作有点超前。 集合上的自定义索引导致了问题。Azure cosmosdb 使用Cosmos DB如何仅查询分区键,azure-cosmosdb,partitioning,Azure Cosmosdb,Partitioning,我们有一组相关文档,它们共享同一个分区密钥。其思想是简单地将它们分组,应该是查询分区键并将它们缝合在一起。我错过了什么 所以 选择*from c,其中c.CustomerId=“500” 将返回3个文档、地址、销售和发票,它们都有一个名为CustomerId的属性,值为500 我知道它不是主键,我故意省略了行键 也许不拆分文档是答案,但是不同的文档具有不同的TTL,这将成为一个问题,不是吗( CustomerId是分区键 微软的文档说这是可能的(引用一个city=settle的例子) 那么,我遗
目前,我已经完全删除了自定义索引,并将建立备份,然后发布更具体的答案 我读到的是PartitionKey是隐式索引的,这上面也有一个索引,所以这可能会引起一些有趣的事情
也许我一点也不了解,但你必须明确你所寻找的价值,我认为这是不一样的: c、 CustomerId=“500” VS c、 客户ID=500 因为一个查找文本,另一个查找数字,请查看数据的存储方式,如果要使用该值执行查询,则必须相同(请记住CustomerId是分区键)