mongodb 查找字符串中的多个单词
mongodb find multiple words in a string
我正在尝试在搜索字符串中查找多个词。
例如,如果我必须找到消息包含单词的记录:“first”和“second”:
{ _id: 1, message: "first and second word" },
{ _id: 2, message: "first only" },
{ _id: 3, message: "second only" },
{ _id: 4, message: "second and first" }
应该returns:
{ _id: 1, message: "first and second word" },
{ _id: 4, message: "second and first" }
我试过了:
db.messages.find({
$text: {$search: "second first"}
})
但它的工作原理类似于 OR,returns 条记录只包含一个词。
我怎样才能在 Mongo 中做到这一点?
这样试试:
db.messages.find("text", {search:"\"second\" \"first\""})
mongo 文档 text search
我正在尝试在搜索字符串中查找多个词。
例如,如果我必须找到消息包含单词的记录:“first”和“second”:
{ _id: 1, message: "first and second word" },
{ _id: 2, message: "first only" },
{ _id: 3, message: "second only" },
{ _id: 4, message: "second and first" }
应该returns:
{ _id: 1, message: "first and second word" },
{ _id: 4, message: "second and first" }
我试过了:
db.messages.find({ $text: {$search: "second first"} })
但它的工作原理类似于 OR,returns 条记录只包含一个词。
我怎样才能在 Mongo 中做到这一点?
这样试试:
db.messages.find("text", {search:"\"second\" \"first\""})
mongo 文档 text search