查詢 MongoDB,使用“like”實現基於以特定字母開頭的姓名和電子郵件欄位?


如需在 MongoDB 中實現“like”,請使用 / /,並在兩者之間設定特定字母。例如,−

/J/

讓我們建立一個帶有文件的集合 −

> db.demo554.insertOne({"UserName":"John","UserMailId":"John@gmail.com"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e8f1cfed1d72c4545cb8679")
}
> db.demo554.insertOne({"UserName":"Chris","UserMailId":"Chris@gmail.com"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e8f1d0cd1d72c4545cb867a")
}
> db.demo554.insertOne({"UserName":"Jace","UserMailId":"Jace@gmail.com"});{
   "acknowledged" : true, "insertedId" : ObjectId("5e8f1d1cd1d72c4545cb867b")
}

使用 find() 方法顯示集合中的所有文件−

> db.demo554.find();

將會生成以下輸出 −

{ "_id" : ObjectId("5e8f1cfed1d72c4545cb8679"), "UserName" : "John", "UserMailId" : "John@gmail.com" }
{ "_id" : ObjectId("5e8f1d0cd1d72c4545cb867a"), "UserName" : "Chris", "UserMailId" : "Chris@gmail.com" }
{ "_id" : ObjectId("5e8f1d1cd1d72c4545cb867b"), "UserName" : "Jace", "UserMailId" : "Jace@gmail.com" }

以下是對“like”的實現查詢−

> db.demo554.find({
...    "$or": [
...       { "UserName": /J/ },
...
...       { "UserMailId": /J/ }
...    ]
... }
... );

將會生成以下輸出 −

{ "_id" : ObjectId("5e8f1cfed1d72c4545cb8679"), "UserName" : "John", "UserMailId" : "John@gmail.com" }
{ "_id" : ObjectId("5e8f1d1cd1d72c4545cb867b"), "UserName" : "Jace", "UserMailId" : "Jace@gmail.com" }

更新於: 14-05-2020

瀏覽量 809

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.