Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

คิวรี่ข้อมูลในอาร์เรย์กับ MongoDB

ค้นหาเอกสารที่มีค่าในอาร์เรย์

MongoDB รองรับการคิวรี่เข้าไปในอาร์เรย์โดยตรง เพียงระบุชื่อฟิลด์อาร์เรย์และค่าที่ต้องการ

ไวยากรณ์

db.yourCollectionName.find({yourArrayFieldName: "yourValue"}).pretty();

ตัวอย่าง

สร้างคอลเลกชัน queryArrayElementsDemo ที่มีฟิลด์ StudentFavouriteSubject เป็นอาร์เรย์:

> db.queryArrayElementsDemo.insertOne({"StudentName":"John","StudentFavouriteSubject":["C","Java"]});
> db.queryArrayElementsDemo.insertOne({"StudentName":"Carol","StudentFavouriteSubject":["C","C++"]});
> db.queryArrayElementsDemo.insertOne({"StudentName":"David","StudentFavouriteSubject":["MongoDB","Java"]});

ค้นหานักเรียนที่ชอบวิชา "Java"

> db.queryArrayElementsDemo.find({StudentFavouriteSubject:"Java"}).pretty();

ผลลัพธ์:

{ "_id" : ObjectId("..."), "StudentName" : "John", "StudentFavouriteSubject" : [ "C", "Java" ] }
{ "_id" : ObjectId("..."), "StudentName" : "David", "StudentFavouriteSubject" : [ "MongoDB", "Java" ] }

คำสั่งจะคืนเอกสารทั้งหมดที่อาร์เรย์ StudentFavouriteSubject มีค่า "Java" อยู่ภายใน