关于Elasticsearch的搜索方式

1.全文搜索

用于对文本字段进行分词后的模糊匹配,支持相关性评分

match查询:对文本进行分词后搜索,默认使用OR,支持AND、minimum_should_match等参数。

minimum_should_match解析:

是 Elasticsearch 中一个用于控制查询条件的参数,主要作用于 布尔查询(bool 查询)的 should 子句dis_max查询。它表示在多个 should 条件中,至少需要满足多少个子条件(或百分比)才能匹配文档。

match_phrase查询:精确匹配分词后的短语顺序

multi_match查询:在多个字段中搜索同一关键词

2.精确匹配

用于不分词的精确匹配(如关键词、数值、日期等)。

term查询:精确匹配某个字段的原始值(不进行分词)

terms查询:匹配字段的多个精确值(类似SQL的IN)

range查询:范围查询(数值、日期等)

3.复合查询

组合多个查询条件,支持逻辑操作。

bool查询:组合多个子查询,支持must(AND)、should(OR)、must_not(NOT)、filter(无评分过滤)

boosting查询:降低某些条件的相关性权重

posted @ 2025-04-07 11:39  留梦&  阅读(28)  评论(0)    收藏  举报