Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Projection mảng đa chiều trong MongoDB?

Để projection mảng đa chiều, cần dùng aggregation framework. Tạo collection với mảng đa chiều cho điểm sinh viên:

> db.multiDimensionalArrayProjection.insertOne(
  {
    "StudentFirstName" : "Chris",
    "StudentMarks" : [ [98, 99],[56,79] ]
  }
);
{ "acknowledged" : true, "insertedId" : ObjectId("5cc6b75a9cb58ca2b005e66c") }

Hiển thị document:

> db.multiDimensionalArrayProjection.find().pretty();

Kết quả:

{ "_id" : ObjectId("5cc6b75a9cb58ca2b005e66c"), "StudentFirstName" : "Chris", "StudentMarks" : [ [ 98, 99 ], [ 56, 79 ] ] }

Truy vấn projection mảng đa chiều (lấy phần tử thứ 2 của mảng con đầu tiên):

> db.multiDimensionalArrayProjection.aggregate([
  { $unwind: '$StudentMarks' },
  { $limit: 1 },
  { $project: { _id: 0, StudentMarks: 1 } },
  { $unwind: '$StudentMarks' },
  { $skip: 1 },
  { $limit: 1 }
]);

Kết quả:

{ "StudentMarks" : 99 }