如何在 MongoDB 中进行不区分大小写的查询?


是的,你可以使用正则表达式在 MongoDB 中执行不区分大小写的查询。其语法如下

db.yourCollectionName.find({"yourFieldName":/^yourvalue$/i});

为了理解上述语法,让我们创建一个包含一些文档的集合。创建带文档的集合的查询如下

> db.caseInsensitiveDemo.insertOne({"Name":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6d7a67f2db199c1278e7ef")
}
> db.caseInsensitiveDemo.insertOne({"Name":"JOHN"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6d7ad6f2db199c1278e7f0")
}

通过 find() 显示集合中的所有文档。查询如下

> db.caseInsensitiveDemo.find();

以下是输出

{ "_id" : ObjectId("5c6d7a67f2db199c1278e7ef"), "Name" : "John" }
{ "_id" : ObjectId("5c6d7ad6f2db199c1278e7f0"), "Name" : "JOHN" }

下面是对不区分大小写进行查询

> db.caseInsensitiveDemo.find({"Name":/^john$/i});

以下是输出

{ "_id" : ObjectId("5c6d7a67f2db199c1278e7ef"), "Name" : "John" }
{ "_id" : ObjectId("5c6d7ad6f2db199c1278e7f0"), "Name" : "JOHN" }

更新于: 30-Jul-2019

335 次查看

开启你的职业

完成课程后获得认证

开始
广告