2024-04-25 13:51:51 发布
网友
有没有一种方法可以过滤pymongo文本搜索的结果。我有一个光标:
db.models.find( {'$text': {'$search': 'some_word'}}, {'score': {'$meta': 'textScore'}})
但这会搜索整个集合,我只想搜索在某个字段上具有特定值的特定文档。
像这样:
我只希望文本搜索搜索在字段1上有“some\u value”的文档
它不会搜索整个集合。它使用文本索引。文本索引将$search中的词干术语与索引中的术语相匹配,后者精确地指示哪些文档包含这些术语。它不会扫描每个文档以查看哪个匹配。可以对文本匹配应用其他条件,如下所示:
$search
> db.models.find({ "$text" : { "$search" : "some_word" }, "field1" : "some_value" })
它不会搜索整个集合。它使用文本索引。文本索引将
$search
中的词干术语与索引中的术语相匹配,后者精确地指示哪些文档包含这些术语。它不会扫描每个文档以查看哪个匹配。可以对文本匹配应用其他条件,如下所示:相关问题 更多 >
编程相关推荐