ES 查詢,1 基於URL 的查詢

2021-10-10 17:13:21 字數 1838 閱讀 4666

基於url 的查詢方式

命令說明

/_search

在所有索引上搜尋

/index1/_search

在 index1 索引上搜尋

/index1,index2/_search

在 index1 , index2 索引上搜尋

/index*/_search

在 index 開頭的索引上搜尋

/g*,user*/_search

在任何以 g 或者 u 開頭的索引中搜尋所有的型別

/gb/user/_search

在 gb 索引中搜尋 user 型別

/gb,us/user,tweet/_search

在 gb 和 us 索引中搜尋 user 和 tweet 型別

/_all/user,tweet/_search

在所有的索引中搜尋 user 和 tweet 型別

get /index1/_search?q=2012&df=title&sort=year:desc&from=0&size=10&time1s

例:

泛查詢

get /index1/_search?q=2012
字段查詢,寫法1
get /index1/_search?q=2012&df=title
字段查詢,寫法2
get /index1/_search?q=title:2012
字段查詢,分組
get /index1/_search?q=title:(beautiful mind)
分組後可以使用修飾符

字段查詢,分組,布林查詢

必須大寫

title:(matrix  not reloaded)
修飾符

符號寫法

and&&

or||

not!

title:(+matrix -reloaded)
修飾符

說明urlencoding

+must

%2b-

must_not

例:

get /index1/_search?q=title:(beautiful and mind)
get /index1/_search?q=title:(beautiful not mind)
字段查詢,分組,範圍查詢

區間說明

閉區間{}

開區間

year: 

year:[* to 2018]

字段查詢,算術符

year: >2010

year:(>2010 && <=2018)

year:(+>2010 && +<=2018)

get /movies/_search?q=year:>=1980

電影需要在 1980 年後

萬用字元查詢
get /movies/_search?q=title:b* 

模糊匹配

get /movies/_search?q=title:beautifl~1

近似查詢,可以對單詞糾錯,並找到結果

get /movies/_search?q=title:"lord rings"~2

可以查詢所有包含 」lorad .... rings 「 模式的結果

get /index1/_search

}}

ES的url方式的查詢方法

最近公司在做使用者畫像,後面搭建es集群,為了實現根據標籤查詢使用者的使用。最後的hive表匯入到es查詢使用。後面肯定不是用es原生api的方式進行查詢的,那麼http方式的查詢es是怎麼樣呢?首先知道es集群的ip位址,預設埠9200。1.根據id精準查詢 說明 pretty引數表示以json格...

es 父子查詢 es父子文件建立查詢

一 準備 1,elasticsearch 5.6.9 2,kibana 5.6.9 3,jdk1.8 二 建立索引,文件 1建立資料庫put database?pretty station stationname 三 填充資料 插入父文件一條記錄 插入id 1的6路post database lin...

ES的查詢介面

1 什麼是query dsl get search query 中有哪些query name 全部查詢出來 match all get web info search 查詢所有的文件 匹配查詢match get web info search 查詢出content中包含 second的文件 查詢出多...