1

在流星中,假设我有一个包含以下文件的 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 }

并且我想使用 $or 运算符返回具有qty > 250或描述为的文档shoe

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

如何使返回的光标按以下顺序排序:

  1. 具有qty > 250和描述匹配的文档shoe
  2. 只有描述的文件shoe
  3. 文件刚刚qty > 250

搜索它似乎是聚合ref 1ref 2可能是一种选择,除了流星的 minimongo 在这一点上似乎不支持聚合。

如果这不能通过 minimongo 排序说明符/查询等来完成,那么如何按上述方式对结果进行排序(假设它是在从游标上获取返回的数组/对象上完成的)

4

0 回答 0