0
MongoDB的总我有一个包含文档一个蒙戈集合像这样:有额外的信息
{
"_id" : ObjectId("57697321c22d3917acd66513"),
"parent" : "AlphaNumericID",
"signature" : "AnotherAlphaNumericID",
"price" : 1638,
"url" : "http://www.thecompany.com/path/to/page1",
"date" : ISODate("2016-06-21T17:02:20.352Z"),
"valid" : true
}
我所试图做的是运行将在签名组提交一个查询,返回最小值和最大值的价格,相应的URL:
{
"signature" : "AnotherAlphaNumericID",
"min_price" : 1504,
"min_rent_listing" : "http://www.thecompany.com/path/to/page1",
"max_price" : 1737,
"max_price_listing" : "http://www.thecompany.com/path/to/page2",
}
运行$group
上$signature
领域获得$min
和$max
是直线前进,但为了得到实际的URL我将查询到2与第一查询,返回排序使用$signature
的文档列表,使用价格从小到大,然后(在python代码中)取第一个和最后一个元素。这工作正常,但会很高兴有一个查询。
想法?
p.s.
另外'玩具'与运行一个查询最小和一个最大和'压缩'的结果。
问题:有没有办法运行查询,以便返回最小值,最大值和最新值?在你的答案中,首先/最后=最小/最大值,因为我们按价格排序:1。我们可以采取结果,'充实'它与'最新',或者我必须坚持两个查询,其中第一个查询是上述和一个单独的查询按日期排序:-1并获得第一个结果? – goggelj
那么,找到它的最好方法就是试试看。 – Saleem
猜测不在一个查询中,因为我需要按最小/最大价格排序。对于最新的我必须按日期排序。种类不能是“连续的”,而是独立的... – goggelj