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

Đặt regex trong MongoDB $ in?

Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo675.insertOne({
... "ListOfNames":["John","Chris","David"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea3f5b404263e90dac943ef")
}
> db.demo675.insertOne({ "ListOfNames":["Bob","Johnson","Sam"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea3f5c804263e90dac943f0")
}
> db.demo675.insertOne({ "ListOfNames":["Jace","Sam"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea3f5d304263e90dac943f1")
}

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.demo675.find();

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

{ "_id" : ObjectId("5ea3f5b404263e90dac943ef"), "ListOfNames" : [ "John", "Chris", "David" ] }
{ "_id" : ObjectId("5ea3f5c804263e90dac943f0"), "ListOfNames" : [ "Bob", "Johnson", "Sam" ] }
{ "_id" : ObjectId("5ea3f5d304263e90dac943f1"), "ListOfNames" : [ "Jace", "Sam" ] }

Sau đây là câu truy vấn để truy vấn với regexp và mảng -

> db.demo675.find({"ListOfNames": {$in:[/John/,/J/]}});

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

{ "_id" : ObjectId("5ea3f5b404263e90dac943ef"), "ListOfNames" : [ "John", "Chris", "David" ] }
{ "_id" : ObjectId("5ea3f5c804263e90dac943f0"), "ListOfNames" : [ "Bob", "Johnson", "Sam" ] }
{ "_id" : ObjectId("5ea3f5d304263e90dac943f1"), "ListOfNames" : [ "Jace", "Sam" ] }