在mongodb中查找一个或另一个单词
我是MongoDB的新手,所以我想知道如何在文档中搜索一个词或另一个词,特别是当一个词是短语,另一个是单个词时 在这里,如果我们必须搜索word printer或ink,我们将使用下面的语法在mongodb中查找一个或另一个单词,mongodb,mongodb-query,Mongodb,Mongodb Query,我是MongoDB的新手,所以我想知道如何在文档中搜索一个词或另一个词,特别是当一个词是短语,另一个是单个词时 在这里,如果我们必须搜索word printer或ink,我们将使用下面的语法 db.supplies.runCommand("text", {search:"printer ink"}) 如果我想找到“打印机墨水”或纸张,该怎么办?注意打印机墨水是一个短语。我试过了 db.supplies.runCommand("text", {search:"\"printerink\" pap
db.supplies.runCommand("text", {search:"printer ink"})
如果我想找到“打印机墨水”或纸张,该怎么办?注意打印机墨水是一个短语。我试过了
db.supplies.runCommand("text", {search:"\"printerink\" paper"})
但这没用,所以我希望有人能帮我 引用文档 如果$search字符串包含短语和单个术语,则文本搜索将仅匹配包含该短语的文档。更具体地说,搜索将使用搜索字符串中的各个术语对短语执行逻辑AND运算 也就是说,要查找word
打印机墨水
或纸张
,您需要运行两个不同的查询
db.supplies.find({$text:{$search:\'printer ink\\'})
及
db.supplies.find({$text:{$search:“paper”})
如果任务不需要使用$text
db.supplies.find({:{“$in”:[/printer ink/,/paper/]})
我就是这么想的。我只是想知道我们有没有别的办法。所以,一旦我们得到了这些,我们就在它们之间进行联合,对吗?@Sam不,没有其他方法,因为query最多只能指定一个$text
表达式谢谢你的帮助。我只是用验证了这一点。find({$text:{$search:'/(\'printer ink\”)(paper)/}
并且它确实只匹配短语,而不管正则表达式中的顺序如何。想象一下。