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

แบบสอบถาม MongoDB เพื่อแสดงเอกสารที่มีชื่อเฉพาะโดยไม่คำนึงถึงกรณี


สำหรับสิ่งนี้ ให้ใช้ $regex ใน MongoDB เราจะค้นหาค่าฟิลด์เอกสารที่มีชื่อ “David” โดยไม่คำนึงถึงกรณี ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo700.insertOne( { details: [ { Name:"david" }]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e6b1551299a9f98c93ac")
}
> db.demo700.insertOne( { details: [ { Name:"Chris" }]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e6b9551299a9f98c93ad")
}
> db.demo700.insertOne( { details: [ { Name:"DAVID" }]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e6bf551299a9f98c93ae")
}
> db.demo700.insertOne( { details: [ { Name:"David" }]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e6c4551299a9f98c93af")
}

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

> db.demo700.find();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" : ObjectId("5ea6e6b1551299a9f98c93ac"), "details" : [ { "Name" : "david" } ] }
{ "_id" : ObjectId("5ea6e6b9551299a9f98c93ad"), "details" : [ { "Name" : "Chris" } ] }
{ "_id" : ObjectId("5ea6e6bf551299a9f98c93ae"), "details" : [ { "Name" : "DAVID" } ] }
{ "_id" : ObjectId("5ea6e6c4551299a9f98c93af"), "details" : [ { "Name" : "David" } ] }

ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารที่มีชื่อเฉพาะโดยไม่คำนึงถึงกรณี -

> db.demo700.find({"details.Name":{$regex:/^David$/i}});

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{ "_id" : ObjectId("5ea6e6b1551299a9f98c93ac"), "details" : [ { "Name" : "david" } ] }
{ "_id" : ObjectId("5ea6e6bf551299a9f98c93ae"), "details" : [ { "Name" : "DAVID" } ] }
{ "_id" : ObjectId("5ea6e6c4551299a9f98c93af"), "details" : [ { "Name" : "David" } ] }