You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB如何查询包含所有指定词的文档,不受词序位置限制?

MongoDB文本查询:匹配所有关键词(忽略顺序)

你之前用带双引号的短语搜索"Le Paul Vens",MongoDB会把它当作精确短语匹配,所以只会返回完全符合这个短语顺序的文档。

要实现匹配所有关键词(不管词汇顺序),只需要去掉短语的双引号,让关键词用空格分隔即可:

query = {"$text": {"$search": "Le Paul Vens"}}

这个查询的逻辑是同时包含所有指定关键词(默认是逻辑AND),所以会返回前三个包含Le、Paul、Vens三个词的文档,不管它们的排列顺序,而最后一个不含这三个词的文档会被排除。

如果需要更明确地指定每个关键词必须存在,也可以给每个关键词单独加双引号:

query = {"$text": {"$search": "\"Le\" \"Paul\" \"Vens\""}}

效果和上面的查询一致,都是确保三个词都出现在文档中,不限制顺序。

内容的提问来源于stack exchange,提问作者H3yH0n

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 20:10:28