Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Hiển thị tài liệu MongoDB với tên cụ thể bất kể chữ hoa thường

Sử dụng $regex với flag i (case-insensitive) để tìm tên "David" bất kể viết hoa hay thường.

Tạo collection với mảng details chứa Name các biến thể:

> 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") }

Hiển thị tất cả:

> db.demo700.find();

Truy vấn regex khớp chính xác "David" (^...$) không phân biệt hoa thường:

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

Kết quả (3 bản ghi: david, DAVID, David):

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