所以根据MongoDB文档,
如果文档字段包含单词blueberry,则对术语blue的搜索将与文档不匹配
这对我的用例很有用,这就是我想要发生的事情.但是,给定以下数据库条目:
> db.test.drop()
> db.test.insert({ "t" : "Men's Fashion" })
> db.test.insert({ "t" : "Women's Fashion" })
> db.test.ensureIndex({ "t" : "text" })
Run Code Online (Sandbox Code Playgroud)
搜索Men's会返回预期结果:
> db.test.find({ "$text" : { "$search" : "\"Men's\"" } }, { "_id" : 0 })
{ "t" : "Men's Fashion" }
Run Code Online (Sandbox Code Playgroud)
然而,搜索整个短语Men's Fashion,意外地也回归女性时尚:
> db.test.find({ "$text" : { "$search" : "\"Men's Fashion\"" } }, { "_id" : 0 })
{ "t" : "Women's Fashion" }
{ "t" : "Men's Fashion" }
Run Code Online (Sandbox Code Playgroud)
我也尝试过"\"Men's\"\"Fashion\""同样的结果.是否有一个解决方法/技巧来使完整的短语只返回整个单词匹配? …