Mongodb 对三个集合进行查询、排序和限制的最有效方法是什么?

Mongodb 对三个集合进行查询、排序和限制的最有效方法是什么?,mongodb,database,Mongodb,Database,我需要查询3个不同的集合 然后我需要对收集结果进行排序(每个结果基于不同的字段和顺序,但每次都有一个DateTime值),最后限制我想要的结果数量(在我的例子中是10个) 目前,我只做了三个单独的查询,每个查询限制为10,然后根据查询的日期和时间手动排序。最后我自己限制在10个 有更好的方法吗?因为mongodb不是一个关系数据库,您可以在一个查询中连接多个表,没有。我甚至不确定您是否可以为关系DBMS进行这种排序(每个字段的优先级相等) 你现在做的听起来真的很好。您可能会改进对这3个结果的排序

我需要查询3个不同的集合

然后我需要对收集结果进行排序(每个结果基于不同的字段和顺序,但每次都有一个DateTime值),最后限制我想要的结果数量(在我的例子中是10个)

目前,我只做了三个单独的查询,每个查询限制为10,然后根据查询的日期和时间手动排序。最后我自己限制在10个


有更好的方法吗?

因为mongodb不是一个关系数据库,您可以在一个查询中连接多个表,没有。我甚至不确定您是否可以为关系DBMS进行这种排序(每个字段的优先级相等)

你现在做的听起来真的很好。您可能会改进对这3个结果的排序。如果总体前10名中没有其他元素,则提前中止以迭代一个或多个集合。您可以相应地修改查询,以仅返回日期低于第一个查询集合的最后一个集合(第10个)的其他两个集合的文档。但也许你已经这么做了


在讨论性能时,可以考虑在查询中使用这些DATE时间字段添加索引,以将字段预留在内存中。

这些集合是什么?查询是什么样子的?