elasticsearch - Elasticsearch 查询不仅可以识别结果,还可以突出显示满足特定属性的项目

标签 elasticsearch

我们有一个要求,我们认为它是多搜索查询的候选人,但我们不确定。

说我们正在卖衣服。
用户可以输入诸如衬衫之类的衣服,然后我们使用过滤器将所有衬衫带回。

我们还希望为用户提供一个选项,让他们键入诸如“formal”或“beach”之类的关键字。但是此关键字不应影响结果,而是用标记来标识这些关键字在结果中出现了哪些项目。

任何建议将不胜感激。

最佳答案

那使用Named Queries呢?

想法是,Elasticsearch的此功能允许用户使用标识特定子句的_name值标记查询中的每个子句。如果特定的子句(例如,带有“正式”关键字的子句或带有“beach”关键字”的子句)匹配,则响应将包括matched_queries属性,每个结果都指出匹配了哪个特定项。

另一种选择是使用Highlights。该功能确实允许您指定单独的highlighting query。但是,此处的响应格式可能不那么直接或无法满足您的要求。

关于elasticsearch - Elasticsearch 查询不仅可以识别结果,还可以突出显示满足特定属性的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58634144/

相关文章:

elasticsearch - 关键字分析器的实际用法

elasticsearch - 除非在查询中明确声明,否则Elasticsearch不使用 “default_search”分析器

elasticsearch - Elasticsearch NEST翻译

elasticsearch - 通过Elasticsearch中单词的正确排序对结果进行评分

elasticsearch - 如何在 Elasticsearch 中突出显示日期字段?

ajax - Web应用程序身份验证并保护单独的Web API(elasticsearch和kibana)

elasticsearch - Elasticsearch节点平衡

elasticsearch - Elasticsearch 查询可以有空值参数吗?

Elasticsearch Java API Function Score Query with geo and time 高斯函数

elasticsearch - 在Elasticsearch中重新索引期间将索引中的所有字段小写