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

วิธีคิวรี่อาร์เรย์สตริงด้วย Regular Expression ใน MongoDB

เพื่อคิวรี่อาร์เรย์สตริงด้วย Regular Expression ใช้ไวยากรณ์ดังนี้:

db.yourCollectionName.find( { yourFieldName: /yourStartingValue./ } ).pretty();

ตัวอย่างการใช้งาน

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

> db.queryArrayDemo.insertOne({"StudentFullName":["Carol Taylor","Caroline Williams","Claire Brown"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ca2774c6304881c5ce84ba0") }
> db.queryArrayDemo.insertOne({"StudentFullName":["John Smith","Jace Doe","Jabin Brown"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ca277b36304881c5ce84ba1") }

แสดงเอกสารทั้งหมด:

> db.queryArrayDemo.find().pretty();

ผลลัพธ์:

{ "_id" : ObjectId("5ca2774c6304881c5ce84ba0"), "StudentFullName" : [
    "Carol Taylor", "Caroline Williams", "Claire Brown"
] }
{ "_id" : ObjectId("5ca277b36304881c5ce84ba1"), "StudentFullName" : [
    "John Smith", "Jace Doe", "Jabin Brown"
] }

คิวรี่ด้วย Regular Expression (ค้นหาชื่อขึ้นต้นด้วย J)

> db.queryArrayDemo.find( { StudentFullName : /J./ } ).pretty();

ผลลัพธ์ (คืนค่าเอกสารที่มีอาร์เรย์ประกอบด้วยชื่อขึ้นต้นด้วย J):

หมายเหตุ: MongoDB จะคืนค่าเอกสารทั้งใบหากอาร์เรย์มีองค์ประกอบอย่างน้อยหนึ่งตัวตรงกับ Regex