Elasticsearch实战——近似文本查询(more_like_this query)

Elasticsearch实战——近似文本查询(more_like_this query)

more_like_this query可以查询和提供文本类似的文档,通常用于近似文本的推荐场景。

查询命令如下:

{
    
    
	"query":{
    
    
		"more_like_this":{
    
    
			"fields":["title"],
			"like":"凤凰自行车",
			"min_term_freq":1,
			"max_query_terms":12
		}
	}
}

可选的查询参数如下:

  • fields:需要匹配的字段。
  • like:要匹配的文本。
  • min_term_freq:文档中词项的最低频率,默认是2,低于此频率的文档会被忽略。
  • max_query_terms:query中能包含的最大词项数目,默认为25。
  • min_doc_freq:最小的文档频率,默认为5。
  • max_doc_freq:最大文档频率。
  • min_word_length:单词的最小长度。
  • max_word_length:单词的最大长度。
  • stop_words:停用词列表。
  • analyzer:分词器。
  • minimum_should_match:文档应该匹配的最小单词数量,默认为query分词后词项的30%。
  • boost_terms:词项的权重。
  • include:是否把输入文档作为结果返回。
  • boost:整个query的权重,默认为1.0。

关注我

搜索微信公众号:java架构强者之路
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/dwjf321/article/details/103960376