Để trả về nhiều tài liệu con, bạn sẽ cần sử dụng khung tổng hợp. Thao tác này sẽ trả về tất cả các tài liệu phụ mà bạn đang tìm kiếm:
db.zip.aggregate(
{$match: {zipcode: 63109}},
{$unwind: "$students"},
{$match: {"students.school": 102}}
)
Bạn có thể làm nhiều việc khác nhau để có được kết quả đầu ra khác nhau, nhưng điều này sẽ trả về:
{
"result" : [
{
"_id" : 1,
"zipcode" : 63109,
"students" : {
"name" : "john",
"school" : 102,
"age" : 10
}
},
{
"_id" : 1,
"zipcode" : 63109,
"students" : {
"name" : "jess",
"school" : 102,
"age" : 11
}
},
{
"_id" : 4,
"zipcode" : 63109,
"students" : {
"name" : "barney",
"school" : 102,
"age" : 7
}
}
],
"ok" : 1
}