全文查询

全文查询族是 Easysearch 进行全文搜索的核心。这些查询会对输入文本进行分词,然后与索引中的倒排索引进行匹配,并根据相关性评分(BM25)返回结果。

相关指南(先读这些) #

查询类型总览 #

查询类型描述适用场景
match最基础的全文查询,单字段,支持运算符与模糊匹配简单关键词搜索
match_phrase短语匹配,词项顺序与距离受控“完整短语"搜索
match_phrase_prefix短语前缀匹配,最后一个词模糊搜索框自动补全
match_bool_prefix布尔前缀匹配,词项位置不限,最后一个词项前缀跨字段自动补全
multi_match在多个字段中进行全文搜索同时搜索标题、内容、标签等
query_string支持布尔操作符的查询语法高级用户搜索,支持 +、-、AND、OR
simple_query_string简化版 query_string,容错能力强用户输入容错,防止查询语法错误
intervals高级文本匹配,精细控制词项间距与顺序法律文档、学术文献的精确匹配

特点 #

  • 分词处理:所有全文查询都会对输入文本进行分词(使用字段配置的分析器)
  • 相关性评分:结果按 BM25 算法进行评分排序
  • 字段配置:分词行为由字段的 analyzer 配置决定(如 IK 分词器用于中文)
  • boost 支持:支持字段级和查询级的评分提升

推荐阅读顺序 #

  1. match 查询:从最基础的查询开始
  2. match_phrase 查询:短语搜索
  3. match_phrase_prefix 查询:自动补全
  4. match_bool_prefix 查询:布尔前缀
  5. multi_match 查询:多字段搜索
  6. query_string 查询:高级语法
  7. simple_query_string 查询:容错搜索
  8. intervals 查询:精细控制