Computer >> Máy Tính >  >> Lập trình >> MongoDB

Truy vấn MongoDB để tìm nạp các giá trị mảng

Sử dụng find () cùng với $ elemMatch để tìm nạp các giá trị mảng. Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.fetchingArrayValuesDemo.insertOne (... {... "StudentName":"David", ... "StudentDetails":[... {... "FatherName":"Bob", .. . "CountryName":"US", ...... "Yêu thích":[... {... "Giáo viên":"DAVID", ... "Chủ đề":[... "MySQL", ... "MongoDB", ... "Java" ...], ... "Dấu":[... 50, ... 60, ... 65 ...] ...} .. .] ... {... "StudentName":"Robert", ... "StudentDetails":[... {... "FatherName":"Sam", ... "CountryName":"AUS", .... .. "Yêu thích":[... {... "Giáo viên":"MIKE", ... "Chủ đề":[... "Python", ... "C", ... "C ++" ...], ... "Dấu":[... 76, ... 89, ... 91 .. .] ...} ...] ......} ...] ...} ...); {"Recognition":true, "insertId":ObjectId ("5e06fc6825ddae1f53b621fb")}  

Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.fetchingArrayValuesDemo.find (); 

Điều này sẽ tạo ra kết quả sau -

 {"_id":ObjectId ("5e06fc3425ddae1f53b621fa"), "StudentName":"David", "StudentDetails":[{"FatherName":"Bob", "CountryName":"US", "Favourite":[ {"Giáo viên":"DAVID", "Chủ đề":["MySQL", "MongoDB", "Java"], "Marks":[50, 60, 65]}]}]} {"_id":ObjectId ( "5e06fc6825ddae1f53b621fb"), "StudentName":"Robert", "StudentDetails":[{"FatherName":"Sam", "CountryName":"AUS", "Yêu thích":[{"Giáo viên":"MIKE", " Chủ đề ":[" Python "," C "," C ++ "]," Dấu ":[76, 89, 91]}]}]} 

Đây là truy vấn để tìm nạp các giá trị mảng -

> db.fetchingArrayValuesDemo.find ({... StudentDetails:{... $ elemMatch:{... Favourite:{... $ elemMatch:{... Teacher:"DAVID" ...}. ..} ...} ...} ...}); 

Điều này sẽ tạo ra kết quả sau -

 {"_id":ObjectId ("5e06fc3425ddae1f53b621fa"), "StudentName":"David", "StudentDetails":[{"FatherName":"Bob", "CountryName":"US", "Favourite":[ {"Giáo viên":"DAVID", "Chủ đề":["MySQL", "MongoDB", "Java"], "Marks":[50, 60, 65]}]}]}