当前位置: 首页 > 知识库问答 >
问题:

执行聚合时如何获得搜索点击结果?

宋望
2023-03-14

在Elasticsearch中,您可以执行返回点击的搜索,同时在一个响应中返回与点击分开的聚合结果。这是非常强大和有效的,因为您可以运行查询和多个聚合,并一次获得两个(或其中一个)操作的结果,避免使用简洁和简化的API进行网络往返。

我想执行搜索,当我对聚合有查询时返回点击。但我不确定如何才能做到以上几点?

我正在使用以下查询:

curl -XPOST 'localhost:9200/employee/_search?pretty' -d '
{
  "size": 0,
  "aggs": {
    "group_by_domain": {
      "terms": {
        "field": "domain"
      }
    }
  }
}'
{
  "took" : 92,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 1000,
    "max_score" : 0.0,
    "hits" : [ ]
  },
  "aggregations" : {
    "group_by_domain" : {
      "doc_count_error_upper_bound" : 5,
      "sum_other_doc_count" : 744,
      "buckets" : [ {
        "key" : "finance",
        "doc_count" : 30
      }]
    }
  }
}

共有1个答案

养星汉
2023-03-14

命中数为空,因为您在指定以下内容时已将返回查询的大小设置为0:

"size": 0,

您可以完全删除大小,在这种情况下,您将得到10次点击,这是默认值,或者您可以设置您想要的大小,例如,如果您指定100,您将得到100次点击。这与搜索结果有关。

现在,如果您还想在聚合中获得结果,您可以使用Top Hits聚合。

 类似资料:
  • > 公共类MainActivity扩展AppCompatActivity实现OnMapReadyCallback、PermissionsListener{ View.onclicklistener(){@override public void onClick(View View){Intent Intent=new PlaceAutoComplete.IntentBuilder().Access

  • 如何在SeleniumWebDriver中单击搜索文本框结果的特定文本。在我的例子中,搜索文本框是“学校”。 我正在发送文本框“School”中的键“RGSchool1”,然后我想在文本框下显示为结果时单击“RGScool”。 我尝试了以下所有接近它的投掷"org.openqa.selenium.NoSuchElementExc0019" 输入文本和标签输出 输入文本并发送回车键 绝对路径- /h

  • 我有以下疑问。 ]) 这是查询的结果。 输出1 我将得到一个$组结果。我将使用$array1。 输出 “计数”结果将复制到所有结果上。 但是$组将创建一个糟糕的结构来读取所有数据。 如何将所有OUTPUT1与OUTPUT2的$组“count”合并? 使用$组“count”,但我不想要$组结构。

  • 我想在Spring WebFlux中使用WebClient来调用一些网址,然后把所有的单声道都放到Flux上。当我调用Flux.block最后,我不能得到结果。 我想得到一张500码的单子,但结果是0码!

  • 问题内容: 我已经多次重温了这个问题,但我从未真正找到合适的答案。 是否可以执行MySQL搜索,以按相关性返回ACTUAL准确排序的结果? 我试图创建一个ajax搜索表单,当用户在输入字段中键入内容时提出建议,并且仅使用纯MySQL查询还没有找到合适的解决方案。我知道有可用的搜索服务器,例如ElasticSearch,我想知道如何仅使用原始MySQL查询来实现。 我有一张学校科目表。少于1200行

  • 我有一些实体B和C从父实体A继承。因此,我在我的数据库中有一个联合的多重继承结构。此外,我在这些实体上定义了一些@NamedQueries,它们运行良好。 我打算有一个@NamedStoredProcess dureQuery,它能够在外围找到一些POI。我已经实现了一个存储过程,它在父表上执行SELECT,获取经度、纬度和半径作为参数,CALL返回正确的记录。执行外围搜索的列都在父表/实体中。