mongodb和meteor,当使用$或时,如何通过首选字段匹配对文档进行排序

时间:2015-02-17 17:05:43

标签: mongodb sorting meteor minimongo

在流星中,假设我有一个带有以下文件的minimongo集合:

{ "_id" : 1, "item" : "abc1", description: "ball", qty: 300 }
{ "_id" : 2, "item" : "abc2", description: "shoe", qty: 100 }
{ "_id" : 3, "item" : "xyz1", description: "tops", qty: 250 }
{ "_id" : 4, "item" : "VWZ1", description: "glue", qty: 300 }
{ "_id" : 5, "item" : "VWZ2", description: "glue", qty: 180 }
{ "_id" : 6, "item" : "XXX1", description: "shoe", qty: 500 }

我希望使用$或运算符来返回qty > 250或描述为shoe的文档。

result: { $or: [ { $gt: [ "$qty", 250 ] }, { $in: [ "$description", "shoe" ] } ] }

如何创建它以便按以下顺序对返回的游标进行排序:

  1. 同时包含qty > 250和描述匹配shoe
  2. 的文档
  3. 仅包含说明shoe
  4. 的文件
  5. 仅有qty > 250
  6. 的文件

    搜索它似乎是一个聚合ref 1ref 2可能是一个选项,除了这个事实上,流星的minimongo似乎似乎不支持聚合。

    如果使用minimongo排序说明符/查询等无法实现这一点,那么如何对结果进行排序,如上所述(假设它是在对光标进行提取时返回的数组/对象上完成的)

0 个答案:

没有答案