国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Elasticsearch的子聚合查詢和使用SpringDataElasticSearch如何實現(xiàn)三級的子查詢

這篇具有很好參考價值的文章主要介紹了Elasticsearch的子聚合查詢和使用SpringDataElasticSearch如何實現(xiàn)三級的子查詢。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

需求說明:

文檔中存在字段year(年),volume(卷),issue(期)三個字段,現(xiàn)有需求如下:需要先根據(jù)year進(jìn)行聚合并且降序,然后根據(jù)volume字段在年聚合后再次聚合,issue字段則在以上兩字段的聚合后再次聚合,效果圖如下:
elasticsearch 子查詢,# SpringDataElasticsearch,elasticsearch,大數(shù)據(jù),搜索引擎

DSL查詢語句

{
  "from": 0,
  "size": 10,
  "aggregations": {
    "year": {
      "terms": {
        "field": "year", //指定根據(jù)year聚合
        "size": 10,
        "min_doc_count": 1,
        "shard_min_doc_count": 0,
        "show_term_doc_count_error": false,
        "order": { 
          "_key": "desc" //根據(jù)year降序排序
        }
      },
      "aggregations": { //子聚合
        "volume": {
          "terms": {
            "field": "volume", //指定根據(jù)volume聚合
            "size": 10,
            "min_doc_count": 1,
            "shard_min_doc_count": 0,
            "show_term_doc_count_error": false,
            "order": {
              "_key": "desc" //根據(jù)volume降序排序
            }
          },
          "aggregations": { //子聚合
            "issue": {
              "terms": {
                "field": "issue", //指定根據(jù)issue聚合
                "size": 10,
                "min_doc_count": 1,
                "shard_min_doc_count": 0,
                "show_term_doc_count_error": false,
                "order": {
                  "_key": "desc" //根據(jù)issue降序排序
                }
              }
            }
          }
        }
      }
    }
  }
}

檢索結(jié)果:
elasticsearch 子查詢,# SpringDataElasticsearch,elasticsearch,大數(shù)據(jù),搜索引擎

SpringDataElasticSearch語句實現(xiàn)

 nativeSearchQueryBuilder.addAggregation(AggregationBuilders.terms("year").field("year").order(BucketOrder.key(false))
                    .subAggregation(AggregationBuilders.terms("volume").field("volume").order(BucketOrder.key(false))
                            .subAggregation(AggregationBuilders.terms("issue").field("issue").order(BucketOrder.key(false))))
            );

實現(xiàn)效果:
elasticsearch 子查詢,# SpringDataElasticsearch,elasticsearch,大數(shù)據(jù),搜索引擎

關(guān)于子聚合的官方文檔

https://www.elastic.co/guide/en/elasticsearch/reference/7.17/search-aggregations-bucket-children-aggregation.html

相關(guān)文檔:https://blog.csdn.net/donghaixiaolongwang/article/details/58597058文章來源地址http://www.zghlxwxcb.cn/news/detail-562438.html

到了這里,關(guān)于Elasticsearch的子聚合查詢和使用SpringDataElasticSearch如何實現(xiàn)三級的子查詢的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Elasticsearch學(xué)習(xí)-- 聚合查詢

    Elasticsearch學(xué)習(xí)-- 聚合查詢

    ?1. 分桶聚合? bucket aggregations 按照每個標(biāo)簽進(jìn)行分類 ,類似于group by ? ? ? ?2. 指標(biāo)聚合 metrics aggregations ? 3. 管道聚合 pipeline aggregations 先計算平均值,再計算最小值 ? ?默認(rèn)查詢返回結(jié)果是10條,可以通過設(shè)置size來看返回值數(shù)量 1. 統(tǒng)計不同標(biāo)簽的商品數(shù)量 ? 2. 為什么上面使

    2023年04月09日
    瀏覽(17)
  • elasticsearch聚合查詢實踐

    elasticsearch聚合查詢實踐

    概念 聚合分類 聚合語法 聚合作用范圍及排序 聚合原理及 terms 精準(zhǔn)度 聚合實驗 桶聚合 指標(biāo)聚合 Pipeline 聚合 實踐一:多商戶數(shù)據(jù)權(quán)限聚合分頁 實踐二:多維度嵌套聚合 實踐三:刪除 ES 索引重復(fù)數(shù)據(jù) 附:實驗環(huán)境 用于聚合的字段必須是 exact value ,即 doc_value=true 。分詞字

    2024年02月03日
    瀏覽(19)
  • elasticsearch的聚合查詢

    elasticsearch的聚合查詢

    聚合基本格式 其中NAME表示當(dāng)前聚合的名字,可以取任意合法的字符串,AGG_TYPE表示聚合的類型,常見的為分為多值聚合和單值聚合 例子 上面的例子表示查詢當(dāng)前庫里面的likeCount的和,返回結(jié)果: 返回結(jié)果中默認(rèn)會包含命中的document,所以需要把size指定為0,結(jié)果中的sum_all為

    2024年02月08日
    瀏覽(17)
  • 重學(xué)Elasticsearch第5章 : 過濾查詢、聚合查詢

    重學(xué)Elasticsearch第5章 : 過濾查詢、聚合查詢

    其實準(zhǔn)確來說,ES中的查詢操作分為2種: 查詢(query) 和 過濾(filter) 。 查詢即是之前提到的query查詢,它(查詢)默認(rèn)會計算每個返回文檔的得分,然后根據(jù)得分排序 。 過濾(filter)只會篩選出符合的文檔,并不計算得分,且它可以緩存文檔 。所以,單從性能考慮,過濾比查詢更快

    2024年02月09日
    瀏覽(22)
  • Elasticsearch 聚合查詢(Aggregation)詳解

    Elasticsearch中的聚合查詢,類似SQL的SUM/AVG/COUNT/GROUP BY分組查詢,主要用于統(tǒng)計分析場景。 實例: 例子聚合統(tǒng)計的效果等價SQL:

    2024年02月04日
    瀏覽(22)
  • elasticsearch中的聚合分組查詢

    分組聚合及嵌套查詢 聚合查詢可以理解為SQL中的求和、求最大值、最小值以及求均值的需求 嵌套可以理解為es存值的某一個字段為對象屬性的值做處理. Elasticsearch Java API分組與聚合結(jié)合 其中對字段field_one進(jìn)行分組,分組的別名為fieldOne,取2^31-1組數(shù)據(jù).如果不設(shè)置size,查詢的結(jié)果

    2024年02月11日
    瀏覽(24)
  • 一起學(xué)Elasticsearch系列-聚合查詢

    本文已收錄至Github,推薦閱讀 ?? Java隨想錄 微信公眾號:Java隨想錄 聚合查詢是 Elasticsearch 中一種強大的數(shù)據(jù)分析工具,用于從索引中提取和計算有關(guān)數(shù)據(jù)的統(tǒng)計信息。聚合查詢可以執(zhí)行各種聚合操作,如計數(shù)、求和、平均值、最小值、最大值、分組等,以便進(jìn)行數(shù)據(jù)匯總和

    2024年01月22日
    瀏覽(20)
  • Elasticsearch 查詢和聚合查詢:基本語法和統(tǒng)計數(shù)量

    摘要:Elasticsearch是一個強大的分布式搜索和分析引擎,提供了豐富的查詢和聚合功能。本文將介紹Elasticsearch的基本查詢語法,包括預(yù)發(fā)查詢和聚合查詢,以及如何使用聚合功能統(tǒng)計數(shù)量。 Elasticsearch是一種開源的分布式搜索和分析引擎,廣泛應(yīng)用于各種場景,包括日志分析、

    2024年02月11日
    瀏覽(29)
  • 【ElasticSearch】深入探索 ElasticSearch 對數(shù)據(jù)的聚合、查詢自動補全、與數(shù)據(jù)庫間的同步問題以及使用 RabbitMQ 實現(xiàn)與數(shù)據(jù)庫間的同步

    【ElasticSearch】深入探索 ElasticSearch 對數(shù)據(jù)的聚合、查詢自動補全、與數(shù)據(jù)庫間的同步問題以及使用 RabbitMQ 實現(xiàn)與數(shù)據(jù)庫間的同步

    在本文中,我們將深入探討 ElasticSearch 在數(shù)據(jù)處理中的關(guān)鍵功能,包括數(shù)據(jù)聚合、查詢自動補全以及與數(shù)據(jù)庫的同步問題。 首先,我們將聚焦于 ElasticSearch 強大的聚合功能,解釋什么是聚合以及如何通過 DSL 語句和 RestClient 實現(xiàn)各種聚合操作。這一功能能夠讓我們更深入地了

    2024年02月08日
    瀏覽(28)
  • ElasticSearch java API - 聚合查詢

    ElasticSearch java API - 聚合查詢

    }, “l(fā)ow”: { “type”: “l(fā)ong” }, “date”: { “format”: “strict_date_optional_time||epoch_millis”, “type”: “date” }, “close”: { “type”: “l(fā)ong” } }, “_all”: { “enabled”: false } } } 索引中的全部數(shù)據(jù): name age salary team position james 33 3000 cav sf irving 25 2000 cav pg curry 29 1000 war pg thompson 26

    2024年04月10日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包