Tag: 聚合框架

Mongoid聚合$匹配Date对象不起作用?

我有一个具有这种结构的集合中的用户文档: { “_id” : ObjectId( “4fb54ef46d93b33b21003951” ), “activities” : [ { “id” : ObjectId( “4fd66f9001e7fe9f03000065” ), “type” : “checkin”, “date_time_created” : Date( 1339453328000 )}, { “date_time_created” : Date( 1337351732000 ), “date_time_updated” : Date( 1337351952635 ), “id” : ObjectId( “4fb65e346d93b3fe77000000” )} ] } 我可以根据日期轻松查询这些文档: User.where( :activities => { ‘$elemMatch’ => { :date_time_created => { ‘$gte’ => […]

mongodb:获取特定文件的最佳方式,然后是其他文件

假设我有1000个文件,每个文件都有: user_id text 现在,我想提取所有这些文档,但首先从几个特定用户(给定一组用户ID)中提取文档,然后是所有其他文档。 我想如果user_id存在于特定用户数组中(使用范围传递数组)然后对该新属性进行排序,则使用map reduce创建新的权重内联属性。 但是根据我的理解,你无法在map reduce之后进行排序。 任何人都有一个很好的建议如何解决这个问题? 任何建议都将受到欢迎。 谢谢!

MongoDB聚合/展开/组/项目查询组合

我有以下格式的集合中的记录: “_id” : “2013-05-23”, “authors_who_sold_books” : [ { “id” : “Charles Dickens”, “num_sold” : 1, “customers” : [ { “time_bought” : 1368627290, “customer_id” : 9715923 } ] }, { “id” : “JRR Tolkien”, “num_sold” : 2, “customers” : [ { “date_bought” : 1368540890, “customer_id” : 9872345 }, { “date_bought” : 1368537290, “customer_id” : 9163893 } […]