我正在将一个小的(<5 GB)集合从非分区迁移到分区。在我的“测试分区”集合上,一个6个月的datetime跨分区查询根据其他参数将0表示为低记录数。在未分区的集合上,相同的查询将返回数百条记录。
我从Azure Cosmos db控制台看到的结果与从Nodejs应用程序看到的结果相同。两种查询方法均不会返回错误消息。非分区和分区集合中的默认值均已创建。
我在网上找到的唯一建议是确保在日期时间搜索中,集合必须具有“字符串的范围索引”,因为这是集合的默认值,因此我正在寻找解决该问题的新指南。 / p>
以下示例查询返回未分区集合上的记录,但分区集合上的记录为零,分区位于/ LOT上。删除where子句的datetime部分将返回两个集合的数据。
select * from MainDataTestP m where (m.CDATETIME >= "2019-05-01T07:00:00.000Z" AND m.CDATETIME <= "2019-11-20T07:59:59.000Z") and m.PROCESS_STEP = "4.0_1.8"