elasticsearch 查詢語句

elasticsearch 查詢語句

1关霸、簡(jiǎn)單查詢
   url:index/_search
  • 不帶參數(shù)、分頁杰扫、排序查詢
    json:
    {
       "size":10
    }
  • 帶分頁队寇、字段篩選查詢
  {
    "size":10,
    "from":0, //從第幾條開始取,若要做分頁該值則是page*size
    "query":{ //字段篩選的必要字段章姓,
        "match":{ //查詢的基礎(chǔ)語句英上,與之類似的有 terms 等
            "province":"湖南" //字段名
        }
    },
    "sort":{ //排序語句
        "created_at":{
            "order":"desc"
        }
    }
}
2炭序、復(fù)雜查詢

*復(fù)雜查詢語句

 {
  "size": 10,
  "from": 0,
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "city": "長(zhǎng)沙"
          }
        },
        {
          "match": {
            "province": "湖南"
          }
        }
      ]
    }
  },
  "sort": {
    "created_at": {
      "order": "desc"
    }
  }
}

ps:當(dāng)你需要多個(gè)條件來進(jìn)行查詢時(shí),這時(shí)可以考慮用復(fù)雜查詢來進(jìn)行苍日,復(fù)雜查詢的語句構(gòu)造

  {
  "query": {
    "bool": {
      "must": [
        { // must 復(fù)雜查詢字段,相當(dāng)于mysql中的 AND
          "match": { 
            "fields": "value"
          }
        },
        {
          "range": { //范圍查詢窗声,具體 下面會(huì)一一講述
              "fields":{
                  "gte":1,
                  "lte":2
              }
          }
        }
      ]
    }
  }
}
3相恃、聚合統(tǒng)計(jì)
  • 概述
    聚合查詢非常適合用于統(tǒng)計(jì)某個(gè)索引中的各項(xiàng)數(shù)據(jù),比如:統(tǒng)計(jì)某天的每個(gè)小時(shí)的用戶量等

  • 語句

  {
  "size": 0,
  "query":{  //篩選條件來得到統(tǒng)計(jì)信息
      "bool":{
          "must":{
              "match":{
                  "uid":60118080791
              }
          }
      }
  },
  "aggs": {
    "result": {
      "date_histogram": {  //按日期分組
        "field": "created_at", 
        "interval": "2h", // 分組間隔時(shí)間 可以是1h 1day笨觅,具體自己去了解
        "format": "yyyy-MM-dd HH:mm:ss" //格式化
      },
      "aggs":{
          "total":{ //結(jié)果字段拦耐,自定義
              "terms":{ 
                  "field":"uid", 
                  "size":200  //顯示數(shù)量
              },
              "aggs":{
                  "max_follower":{ //結(jié)果字段、自定義
                      "extended_stats":{ //得到的統(tǒng)計(jì)信息见剩,有平均值杀糯、最大值、最小值苍苞、方差
                          "field":"follower_count"
                      }
                  }
              }
          }
      }
    }
  }
}
4固翰、語句的相應(yīng)字段解釋
  • must
    must 相當(dāng)于 mysql 中的 and 語句,比如我要查詢學(xué)生表中性別為并且年齡為18歲的學(xué)生羹呵,語句構(gòu)造如下:
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "gender": 1
          }
        },
        {
          "match": {
            "age": 18
          }
        }
      ]
    }
  }
}

在以上語句中骂际,如果有多個(gè)條件,則 must 后面需是數(shù)組對(duì)象冈欢,即:must:[{},{}]

  • match
    match 一般適用于在字段查詢時(shí)歉铝,相當(dāng)于模糊查詢,如果要查詢的字段設(shè)置了分詞器凑耻,就會(huì)是模糊查詢太示,如:我需要查詢簽名中含有操作的所有用戶,語句構(gòu)造如下:
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "signature": "操作"
          }
        }
      ]
    }
  }
}

上述語句中如果只有一個(gè)條件香浩,建議不使用 bool結(jié)構(gòu)类缤,可以使用最簡(jiǎn)單 query:{match:{field:""}}
match類似的結(jié)構(gòu)有 terms弃衍,該結(jié)構(gòu)主要是用于精確查詢呀非,

  • range
    range相當(dāng)于mysql中的between,一般用戶范圍查詢镜盯,比如:我要查詢年齡在18至20歲的學(xué)生岸裙,語句構(gòu)造如下:
{
  "query": {
    "bool": {
      "must": [
        {
          "range": {
            "age": {
                "gte":18,
                "lte":20
            }
          }
        }
      ]
    }
  }
}

gte相當(dāng)于 >lte相當(dāng)于 <

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末速缆,一起剝皮案震驚了整個(gè)濱河市降允,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌艺糜,老刑警劉巖剧董,帶你破解...
    沈念sama閱讀 222,378評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件幢尚,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡翅楼,警方通過查閱死者的電腦和手機(jī)尉剩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來毅臊,“玉大人理茎,你說我怎么就攤上這事」苕遥” “怎么了皂林?”我有些...
    開封第一講書人閱讀 168,983評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)蚯撩。 經(jīng)常有香客問我础倍,道長(zhǎng),這世上最難降的妖魔是什么胎挎? 我笑而不...
    開封第一講書人閱讀 59,938評(píng)論 1 299
  • 正文 為了忘掉前任沟启,我火速辦了婚禮,結(jié)果婚禮上呀癣,老公的妹妹穿的比我還像新娘美浦。我一直安慰自己,他們只是感情好项栏,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,955評(píng)論 6 398
  • 文/花漫 我一把揭開白布浦辨。 她就那樣靜靜地躺著,像睡著了一般沼沈。 火紅的嫁衣襯著肌膚如雪流酬。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,549評(píng)論 1 312
  • 那天列另,我揣著相機(jī)與錄音芽腾,去河邊找鬼。 笑死页衙,一個(gè)胖子當(dāng)著我的面吹牛摊滔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播店乐,決...
    沈念sama閱讀 41,063評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼艰躺,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了眨八?” 一聲冷哼從身側(cè)響起腺兴,我...
    開封第一講書人閱讀 39,991評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎廉侧,沒想到半個(gè)月后页响,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體篓足,經(jīng)...
    沈念sama閱讀 46,522評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,604評(píng)論 3 342
  • 正文 我和宋清朗相戀三年闰蚕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了栈拖。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,742評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡没陡,死狀恐怖辱魁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情诗鸭,我是刑警寧澤,帶...
    沈念sama閱讀 36,413評(píng)論 5 351
  • 正文 年R本政府宣布参滴,位于F島的核電站强岸,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏砾赔。R本人自食惡果不足惜蝌箍,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,094評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望暴心。 院中可真熱鬧妓盲,春花似錦、人聲如沸专普。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽檀夹。三九已至筋粗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間炸渡,已是汗流浹背娜亿。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蚌堵,地道東北人买决。 一個(gè)月前我還...
    沈念sama閱讀 49,159評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像吼畏,于是被迫代替她去往敵國(guó)和親督赤。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,747評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容