포함된 모든 문서를 가져오려면 MongoDB에서 $project를 사용합니다. 문서로 컬렉션을 만들자 −
> db.demo220.insertOne({
... "id":101,
... "FullName" : "John Doe",
... "EmailId" : "john12@gmail.com",
... "ShippingDate" : new ISODate(),
... "details" : { "_id" :1001, "isMarried" :true }
...}
...);
{
"acknowledged" : true,
"insertedId" : ObjectId("5e3eaf5b03d395bdc213471d")
}
> db.demo220.insertOne(
...{
... "id":102,
... "FullName" : "John Smith",
... "EmailId" : "johnsmith@gmail.com",
... "ShippingDate" : new ISODate(),
... "details" : { "_id" :1002, "isMarried" :false }
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e3eaf5c03d395bdc213471e")
} find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo220.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e3eaf5b03d395bdc213471d"), "id" : 101, "FullName" : "John Doe", "EmailId" : "john12@gmail.com", "ShippingDate" : ISODate("2020-02-08T12:53:47.876Z"), "details" : { "_id" : 1001, "isMarried" : true } }
{ "_id" : ObjectId("5e3eaf5c03d395bdc213471e"), "id" : 102, "FullName" : "John Smith", "EmailId" : "johnsmith@gmail.com", "ShippingDate" : ISODate("2020-02-08T12:53:48.991Z"), "details" : { "_id" : 1002, "isMarried" : false } } 다음은 포함된 모든 문서를 가져오는 쿼리입니다. −
> db.demo220.aggregate({ $project : {
... "isMarried" : "$details.isMarried",
... "detailsId" : "$details_id", } }); 이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e3eaf5b03d395bdc213471d"), "isMarried" : true }
{ "_id" : ObjectId("5e3eaf5c03d395bdc213471e"), "isMarried" : false }