我需要在执行mongoDB查询时将所有记录放入一个数组中。我在下面解释我的查询。
db.getCollection('orders').aggregate([
{
$match: {"Customer.StoreCode":"CMHB"}
},
{
$group: {_id : "$Customer.CustomerMobile", "data" : {"$first" : "$$ROOT"}}
},
{
$project: {
OrderNumber:"$data.OrderNumber",
OrderStatus:"$data.OrderStatus",
OrderType:"$data.OrderType",
CreatedAt:"$data.CreatedAt",
CustomerMobile: "$data.Customer.CustomerMobile",
CustomerLastName:"$data.Customer.CustomerLastName",
CustomerFirstName:"$data.Customer.CustomerFirstName",
StoreCode:"$data.Customer.StoreCode",
TransactionId:"$data.PaymentDetails.TransactionId",
PaymentStatus:"$data.PaymentDetails.PaymentStatus",
PaymentAmount:"$data.PaymentDetails.PaymentAmount",
ItemNos: { $cond: { if: { $isArray: "$data.Products" }, then: { $size: "$data.Products" }, else: "NA"} }
}
}
])
在这里,我得到了一些根据商店代码和手机号的记录。在这里,我需要使用同一查询将所有记录放入一个数组。
MongoDB具有toArray()函数,您可以执行此操作
db.getCollection().toArray();
https://docs.mongodb.com/manual/reference/method/cursor.toArray/