【发布时间】:2021-12-01 09:13:53
【问题描述】:
在 cosmosDB MongoDB API 中,我需要运行一个查询来检索按字符串字段排序的项目,该字段还可以包含数字,例如 item-2、item-3、item-11。在 MongoDB 文档中,默认行为是对 [item-11, item-2, item-3] 之类的项目进行排序,将它们作为字符串进行比较,但是从 3.4 版开始,可以以这种方式使用排序规则:
db.collectionName.find().sort({title: 1}).collation({locale: "en_US", numericOrdering: true})
将子字符串中的数字排序为数字(在我的情况下为 [item-2, item-3, item-11]);
我的 CosmosDB 服务器版本是 3.6,因此它应该支持这一点,因为它是在 MongoDB 3.4 中添加的,但排序规则似乎被忽略了(使用 Compass 测试)。
有没有办法使这项工作或有关此问题的一些文档参考?
【问题讨论】:
标签: azure-cosmosdb azure-cosmosdb-mongoapi