Dùng positional operator $. Tạo collection:
> db.subElementQueryingDemo.insertOne(
{
"ClientName":"Chris",
"Status": [ { "isMarried": true }, { "isMarried": false } ]
}
);
{ "acknowledged" : true, "insertedId" : ObjectId("5ccf28c9dceb9a92e6aa1953") }
Hiển thị document:
> db.subElementQueryingDemo.find().pretty();
Kết quả:
Truy vấn sub-element: tìm document có Status.isMarried = true, chỉ trả về phần tử khớp đầu tiên:
> db.subElementQueryingDemo.find({ "Status.isMarried": true }, {ClientName: 1, 'Status.$': 1}).pretty();Kết quả: