最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ES多條件查詢寫法舉例

 更新時(shí)間:2023年11月14日 11:54:55   作者:憑欄聽雨客  
這篇文章主要給大家介紹了關(guān)于ES多條件查詢的相關(guān)資料,Elasticsearch多條件查詢是指在查詢數(shù)據(jù)時(shí),可以同時(shí)使用多個(gè)條件來篩選數(shù)據(jù),文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

場(chǎng)景:想要查詢出設(shè)備id 為 3 的所有設(shè)備上報(bào)信息,并且上報(bào)信息的開始時(shí)間或結(jié)束時(shí)間只要有一個(gè)滿足 在 某個(gè)時(shí)間段里即可。

在 Elasticsearch 中,您可以使用布爾查詢來實(shí)現(xiàn)同時(shí)滿足條件1并且滿足條件2或條件3中的一個(gè)的查詢。具體來說,您可以使用“must”子句來指定滿足條件1的查詢,使用“should”子句來指定滿足條件2或條件3中的一個(gè)的查詢,并將它們組合起來。

以下是一個(gè)示例查詢:

GET /my_index/_search
{
  "query": {
    "bool": {
      "must": [
        { "term": { "deviceId": 3 } }
      ],
      "should": [
              {
                "range": {
                  "startTime": {
                    "gte": "2023-10-11T23:12:02+08:00",
                    "lte": "2023-10-11T23:12:02+08:00",
                    "time_zone": "+08:00"
                  }
                }
              },
              {
                "range": {
                  "endTime": {
                    "gte": "2023-10-11T23:12:02+08:00",
                    "lte": "2023-10-11T23:12:02+08:00",
                    "time_zone": "+08:00"
                  }
                }
              }
            ],
      "minimum_should_match": 1
    }
  }
}

“minimum_should_match”參數(shù)被設(shè)置為1,這意味著至少有一個(gè)“should”子句必須匹配才能返回結(jié)果。

還有另外一種寫法:

{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "deviceId": 3
          }
        },
        {
          "bool": {
            "should": [
              {
                "range": {
                  "startTime": {
                    "gte": "2023-10-11T23:12:02+08:00",
                    "lte": "2023-10-11T23:12:02+08:00",
                    "time_zone": "+08:00"
                  }
                }
              },
              {
                "range": {
                  "endTime": {
                    "gte": "2023-10-11T23:12:02+08:00",
                    "lte": "2023-10-11T23:12:02+08:00",
                    "time_zone": "+08:00"
                  }
                }
              }
            ]
          }
        }
      ]
    }
  }
}

具體解釋如下:

  • “query”: 指定查詢語句。
  • “bool”: 使用布爾查詢,實(shí)現(xiàn)多個(gè)查詢條件的組合。
  • “must”: 必須匹配的查詢條件,相當(dāng)于邏輯上的"AND"。
  • “term”: 匹配一個(gè)精確值的查詢。
  • “deviceId”: 待匹配的字段名。
  • 3: 待匹配的值。
  • “bool”: 使用布爾查詢,實(shí)現(xiàn)多個(gè)查詢條件的組合。
  • “should”: 至少匹配一個(gè)查詢條件,相當(dāng)于邏輯上的"OR"。
  • “range”: 匹配一個(gè)數(shù)值或日期范圍內(nèi)的查詢。
  • “startTime”: 待匹配的字段名。
  • “endTime”: 待匹配的字段名。
  • “gte”: 大于或等于(greater than or equal to)指定值。
  • “lte”: 小于或等于(less than or equal to)指定值。
  • “time_zone”: 指定時(shí)區(qū)。

總結(jié) 

到此這篇關(guān)于ES多條件查詢的文章就介紹到這了,更多相關(guān)ES多條件查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • 解決Dubbo應(yīng)用啟動(dòng)注冊(cè)ZK獲取IP慢的原因之一

    解決Dubbo應(yīng)用啟動(dòng)注冊(cè)ZK獲取IP慢的原因之一

    這篇文章主要介紹了解決Dubbo應(yīng)用啟動(dòng)注冊(cè)ZK獲取IP慢的原因之一,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Java數(shù)據(jù)結(jié)構(gòu)之環(huán)形鏈表和約瑟夫問題詳解

    Java數(shù)據(jù)結(jié)構(gòu)之環(huán)形鏈表和約瑟夫問題詳解

    約瑟夫(Josephus)問題是單向環(huán)形鏈表的一種體現(xiàn),也就是丟手帕問題,下面這篇文章主要給大家介紹了關(guān)于Java數(shù)據(jù)結(jié)構(gòu)之環(huán)形鏈表和約瑟夫問題的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • SpringBoot項(xiàng)目打成War布署在Tomcat的詳細(xì)步驟

    SpringBoot項(xiàng)目打成War布署在Tomcat的詳細(xì)步驟

    這篇文章主要介紹了SpringBoot項(xiàng)目打成War布署在Tomcat,本文分步驟結(jié)合圖文實(shí)例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • Java動(dòng)態(tài)規(guī)劃篇之線性DP的示例詳解

    Java動(dòng)態(tài)規(guī)劃篇之線性DP的示例詳解

    這篇文章主要通過幾個(gè)例題為大家詳細(xì)介紹一些Java動(dòng)態(tài)規(guī)劃中的線性DP,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Java有一定的幫助,需要的可以參考一下
    2022-11-11
  • Servlet方法生命周期及執(zhí)行原理詳解

    Servlet方法生命周期及執(zhí)行原理詳解

    運(yùn)行在服務(wù)器端的小程序,Servlet就是一個(gè)接口,定義了Java類被瀏覽器訪問到(tomcat識(shí)別)的規(guī)則,將來我們自定義一個(gè)類,實(shí)現(xiàn)Servlet接口,復(fù)寫方法
    2021-09-09
  • Java Servlet請(qǐng)求重定向的方法

    Java Servlet請(qǐng)求重定向的方法

    這篇文章主要介紹了使用Java Servlet請(qǐng)求重定向的方法,幫助大家更好的理解和學(xué)習(xí)Java Servlet的相關(guān)知識(shí),感興趣的朋友可以了解下
    2020-11-11
  • Spring Shell開發(fā)自定義命令行工具詳解

    Spring Shell開發(fā)自定義命令行工具詳解

    Spring Shell是Spring生態(tài)系統(tǒng)中的一個(gè)強(qiáng)大組件,它允許開發(fā)者輕松創(chuàng)建功能豐富的命令行,本文將介紹如何在Spring Boot項(xiàng)目中集成和使用Spring Shell,開發(fā)自定義命令,需要的可以了解下
    2025-07-07
  • IntelliJ IDEA多屏后窗口不顯示問題解決方案

    IntelliJ IDEA多屏后窗口不顯示問題解決方案

    這篇文章主要介紹了IntelliJ IDEA多屏后窗口不顯示問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java實(shí)現(xiàn)n位數(shù)字的全排列

    Java實(shí)現(xiàn)n位數(shù)字的全排列

    今天小編就為大家分享一篇關(guān)于Java實(shí)現(xiàn)n位數(shù)字的全排列,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 解決jmap命令打印JVM堆信息異常的問題

    解決jmap命令打印JVM堆信息異常的問題

    這篇文章主要介紹了解決jmap命令打印JVM堆信息異常的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12

最新評(píng)論

弥勒县| 祥云县| 柞水县| 永胜县| 琼中| 冀州市| 蓝田县| 赤峰市| 时尚| 枞阳县| 文水县| 通州市| 马关县| 望都县| 定州市| 马山县| 山东| 南和县| 沈阳市| 根河市| 怀仁县| 望谟县| 双柏县| 云南省| 威远县| 红桥区| 晋宁县| 沂源县| 新疆| 定襄县| 陆河县| 盘锦市| 南投县| 汕尾市| 新干县| 杨浦区| 太仓市| 盐津县| 澄迈县| 南昌市| 遵化市|