$concatArrays用于连接数组以返回连接的数组。
让我们创建一个包含文档的集合-
> db.demo338.insertOne({"Name":"Chris","Marks1":[ [56,67,45],[67,89,90,91]]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5299baf8647eb59e56209f")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo338.find().pretty();
这将产生以下输出-
{
"_id" : ObjectId("5e5299baf8647eb59e56209f"),
"Name" : "Chris",
"Marks1" : [
[
56,
67,
45
],
[
67,
89,
90,
91
]
]
}以下是对现有多数组字段和连接数组进行处理的查询-
> db.demo338.aggregate([
... { "$project": {
... "Marks": {
... "$reduce": {
... "input": "$Marks1",
... "initialValue": [],
... "in": { "$concatArrays": ["$$this", "$$value"] }
... }
... }
... }}
... ])这将产生以下输出-
{ "_id" : ObjectId("5e5299baf8647eb59e56209f"), "Marks" : [ 67, 89, 90, 91, 56, 67, 45 ] }