【发布时间】:2017-06-24 17:26:08
【问题描述】:
我有一个集合markets 充满了投注市场。我在集合中的数据如下所示:
{ "team" : "Milan", "back" : 1.0, "lay" : 1.0, "btotal" : 7.0, "ltotal" : 6.0 },
{ "team" : "Chelsea", "back" : 1.0, "lay" : 1.0, "btotal" : 1.0, "ltotal" : 1.0 },
{ "team" : "Arsenal", "back" : 1.0, "lay" : 1.0, "btotal" : 1.0, "ltotal" : 1.0 },
{ "team" : "Milan", "back" : 3.0, "lay" : 3.0, "btotal" : 1.0, "ltotal" : 18.0 }
我想将我的数据显示为唯一名称列表、该行中最高的btotal 和对应的back 赔率、最高的ltotal 及其对应的lay 赔率。
从上面的例子中,返回的数据应该是这样的:
{"team":"Milan", "back":1.0, "lay":3.0, "btotal":7.0, "ltotal":18.0},
{"team":"Chelsea", "back":1.0, "lay":1.0, "btotal":1.0, "ltotal":1.0},
{"team":"Arsenal", "back":1.0, "lay":1.0, "btotal":1.0, "ltotal":1.0}
这是输出,因为"team":"Milan" 第一次出现时的btotal 大于第二次出现,因此back 的赔率随之返回,@987654332 第二次出现时的ltotal @ 高于第一个,因此返回该行中的 lay 赔率。
任何关于如何在 Mongo 或 Mongoose 中构造此查询的想法都将不胜感激。
【问题讨论】:
标签: mongodb mongoose mongodb-query