如果可以在mongodb中搜索多个短语吗?
代表:
db.words.insert({name:"john cooper"})
db.words.insert({name:"mike spelman"})
我需要找到“john cooper”和“mike spelman”
我可以使用单个短语创建查询:
db.words.find({$text:{$search : "\"mike serpsky\" john cooper"}})
并获得:
{ "_id" : ObjectId("55f01b2c827e16e12f6eeebf"), "name" : "mike serpsky" }
但我无法创建下一个查询:
db.words.find({$text:{$search : "\"mike serpsky\" \"john cooper\""}})
如果在单个查询中存在某种方法吗?
答案 0 :(得分:2)
确定。在这种情况下,全文搜索不是很有用。 使用正则表达式建立解决方案:
db.words.find({"name": {$in : [/john cooper/, /mike serpsky/]}})
或
db.words.find({"name": /john cooper|mike serpsky/})
两者都很好。