模糊查詢
記錄如下:
{ "_id" : ObjectId("5c3d486d24aa9a000526367b"), "name" : "fuc" } { "_id" : ObjectId("5c3d486d24aa9a000526367b"), "name" : "fuc_1" } { "_id" : ObjectId("5c3d486d24aa9a001526367b"), "name" : "fuc_2" } { "_id" : ObjectId("5c469cd27353b40005bcb67b"), "name" : "map (2)_2" } { "_id" : ObjectId("5c469cd27353b40005bcb67c"), "name" : "map (2)_3" } { "_id" : ObjectId("5c469cd37353b40005bcb67d"), "name" : "map (2)_4" } { "_id" : ObjectId("5c469cd37353b40005bcb67e"), "name" : "map (2)_5" }
查詢name以fuc開頭的:
db.getCollection('maps').find({"name" :{$regex: /fuc/}})
結果如下:
{ "_id" : ObjectId("5c3d486d24aa9a000526367b"), "name" : "fuc" } { "_id" : ObjectId("5c3d486d24aa9a000526367b"), "name" : "fuc_1" } { "_id" : ObjectId("5c3d486d24aa9a001526367b"), "name" : "fuc_2" }
模糊查詢中帶有括號的,重點是將括號用反斜杠"\"進行轉義:
db.getCollection('maps').find({"name" :{$regex: /map \(2\)/}})
這樣就能模糊查詢出帶有括號的記錄了:
{ "_id" : ObjectId("5c469cd27353b40005bcb67b"), "name" : "map (2)_2" } { "_id" : ObjectId("5c469cd27353b40005bcb67c"), "name" : "map (2)_3" } { "_id" : ObjectId("5c469cd37353b40005bcb67d"), "name" : "map (2)_4" } { "_id" : ObjectId("5c469cd37353b40005bcb67e"), "name" : "map (2)_5" }