回答
,所以我有一个数据库模式:
{
"_id" : ObjectId("5a310e7c202c89656807819e"),
"customerId" : "A1284",
"name" : "CA Technologies",
"firstOrder" : 2012,
"tenure" : 5,
"sales" : [
{
"year" : 2014,
"amount" : 130269
},
{
"year" : 2015,
"amount" : 139387.83
},
{
"year" : 2016,
"amount" : 156114.3696
},
{
"year" : 2017,
"amount" : 170164.6629
}
],
"averageSales" : 148983.96562499998,
"rebate" : 59593.58624999999,
"discount" : 8508.233145,
"state" : "FL",
"membershipCode" : 4,
"totalSales" : 595935.8624999999
}我如何从这样的数据中获取信息:哪些客户在纽约拥有最高的总计。用customerid
您可以按 tostalsales 以应有的顺序订购您的项目,并取得第一个结果。
db.customers.find({state: "NY"}, {customerId: 1}).sort({totalSales: -1}).limit(1)
要限制可以使用投影的返回字段的数量,并仅指定CustomerID。