MongoDB日期排序的粒度?

时间:2010-12-15 23:38:29

标签: sorting date mongodb granularity

是否可以按粒度对MongoDB的日期值进行排序?

我想按日期订购我的结果,但我不关心小时/分钟/秒数据。我不想存储像'20101215'这样的附加参数。

1 个答案:

答案 0 :(得分:1)

对你的问题的简短回答是“不”。没有存储另一个字段是不可能的。即使有可能你不想b / c在Mongo中排序时你真的需要索引你要排序的字段,否则db需要扫描db中的每个文件来进行排序。因此,如果你要做你所建议的,你还需要索引部分日期字段,这在mongo中也是不可能的。

我认为最好的方法是存储2个字段,一个用于年/月/日,另一个用于小时/分钟/秒。然后,您将在排序和索引方面拥有更大的灵活性。它并不像你想的那样干净或理想,但这是db的唯一选择。

另一种选择是在结果返回后优化应用程序中的订单。