MongoDB 查詢針對特定不區分大小寫搜尋


我們首先使用文件建立一個集合 -

> db.demo186.insertOne({"UserEmailId":"JOHN@GMAIL.COM","UserName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399d769e4f06af55199808")
}
> db.demo186.insertOne({"UserEmailId":"chris@gmail.com","UserName":"chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399d879e4f06af55199809")
}
> db.demo186.insertOne({"UserEmailId":"DAVID@GMAIL.COM","UserName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e399d979e4f06af5519980a")
}

使用 find() 方法從集合顯示所有文件 -

> db.demo186.find();

這將產生以下輸出 -

{ "_id" : ObjectId("5e399d769e4f06af55199808"), "UserEmailId" : "JOHN@GMAIL.COM", "UserName" : "John" }
{ "_id" : ObjectId("5e399d879e4f06af55199809"), "UserEmailId" : "chris@gmail.com", "UserName" : "chris" }
{ "_id" : ObjectId("5e399d979e4f06af5519980a"), "UserEmailId" : "DAVID@GMAIL.COM", "UserName" : "David" }

以下是對不區分大小寫搜尋的查詢 -

> var userMailId = [ /john@gmail.com/i, /david@gmail.com/i ]
> db.demo186.find({
...   '$or': [
...      { 'UserEmailId': { '$in': userMailId} },
...      { 'UserName': 'John' }
...   ]
...})

這將產生以下輸出 -

{ "_id" : ObjectId("5e399d769e4f06af55199808"), "UserEmailId" : "JOHN@GMAIL.COM", "UserName" : "John" }
{ "_id" : ObjectId("5e399d979e4f06af5519980a"), "UserEmailId" : "DAVID@GMAIL.COM", "UserName" : "David" }

更新於: 2020 年 3 月 27 日

229 次瀏覽

開啟您的 職業

透過完成課程獲得認證

開始學習
廣告