การใช้ Nested Queries ด้วย Dot Notation
สำหรับ Nested Queries ให้สร้าง Collection พร้อมข้อมูลก่อน
สร้าง Collection พร้อมข้อมูล
> db.demo492.insertOne({
... "ProductDetails" :
... {
... "StockDetails" : [
... { "ProductName" : "Product-1" },
... {"ProductName" : "Product-2"},
... { "ProductName" : "Product-3"}
... ]
... }
... });
{ "acknowledged" : true, "insertedId" : ObjectId("5e849db8b0f3fa88e22790c2") }
> db.demo492.insertOne({
... "ProductDetails" :
... {
... "StockDetails" : [
... { "ProductName" : "Product-4" },
... {"ProductName" : "Product-5"},
... { "ProductName" : "Product-6"}
... ]
... }
... });
{ "acknowledged" : true, "insertedId" : ObjectId("5e849dceb0f3fa88e22790c3") }
แสดงเอกสารทั้งหมด
> db.demo492.find();
ผลลัพธ์:
{ "_id" : ObjectId("5e849db8b0f3fa88e22790c2"), "ProductDetails" : { "StockDetails" : [ { "ProductName" : "Product-1" }, { "ProductName" : "Product-2" }, { "ProductName" : "Product3" } ] } }
{ "_id" : ObjectId("5e849dceb0f3fa88e22790c3"), "ProductDetails" : { "StockDetails" : [ { "ProductName" : "Product-4" }, { "ProductName" : "Product-5" }, { "ProductName" : "Product6" } ] } }
Nested Query ด้วย Dot Notation
> db.demo492.find({ "ProductDetails.StockDetails.ProductName":"Product-1"});
ผลลัพธ์:
{ "_id" : ObjectId("5e849db8b0f3fa88e22790c2"), "ProductDetails" : { "StockDetails" : [ { "ProductName" : "Product-1" }, { "ProductName" : "Product-2" }, { "ProductName" : "Product3" } ] } }