POST http://127.0.0.1:9200/book/_search
成都創(chuàng)新互聯(lián)專注于西工企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,商城網(wǎng)站定制開發(fā)。西工網(wǎng)站建設(shè)公司,為西工等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站建設(shè),專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
{
"query":{
"match_all":{}
}
}
{
"query":{
"match":{
"title":"入門到精通"
}
},
"from":1,
"size":5,
"sort":{
"publish_date":{
"order":"asc"
}
}
}
{
"aggs":{
"group_by_word_count":{
"terms":{
"field":"word_count"
}
},
"group_by_publish_date":{
"terms":{
"field":"publish_date"
}
}
}
}
{
"aggs":{
"total_word_count":{
"stats":{
"field":"word_count"
}
}
}
}
{
"aggs":{
"max_word_count":{
"max":{
"field":"word_count"
}
}
}
}
1.子條件查詢 又稱葉子條件查詢(特定字段查詢所指特定的值)
- 1.1Query Context
在查詢的過程中,除了判斷文檔是否滿足查詢條件外,ES還會計算一個_score來標識匹配的程度,旨在判斷目標文檔和查詢條件的匹配程度有多好。
{
"query":{
"match":{
"title":"PHP從入門到精通"
}
}
}
會匹配PHP、從入門到精通兩個關(guān)鍵詞
{
"query":{
"match_phrase":{
"title":"PHP從入門到精通"
}
}
}
{
"query":{
"multi_match":{
"query":"PHP",
"fields":["title","author"]
}
}
}
查詢title或author中包含PHP關(guān)鍵字
{
"query":{
"query_string":{
"query":"(PHP AND 入門) OR 普改"
}
}
}
文本字段同時包含PHP和入門兩個關(guān)鍵詞或者文本字段包含普改
{
"query":{
"query_string":{
"query":"PHP",
"fields":["title","author"]
}
}
}
- 1.1.2字段級別查詢:針對結(jié)構(gòu)化數(shù)據(jù),如數(shù)字、日期等
{
"query":{
"term":{
"author":"普改"
}
}
}
{
"query":{
"range":{
"word_count":{
"gte":"170000",
"lte":"200000"
}
}
}
}
{
"query":{
"range":{
"publish_date":{
"gte":"2018-01-01",
"lte":"2019-12-30"
}
}
}
}
{
"query":{
"range":{
"publish_date":{
"gte":"2019-01-01",
"lte":"now"
}
}
}
}
1.2Filter Context
在查詢過程中,只判斷該文檔是否滿足條件,只有yes或者no.
(query判斷yes或者no,還會_score匹配程度)
ES會對查詢結(jié)果做緩存,故速度比Query要快
{
"query":{
"bool":{
"filter":{
"term":{
"author":"普改"
}
}
}
}
}
2.復(fù)合條件查詢(以一定的邏輯組合子查詢查詢)
{
"query":{
"bool":{
"must":{
"match":{
"title":"PHP從入門到精通"
}
},
"filter":{
"range":{
"word_count":{
"gt":170000
}
}
}
}
},
"from":1,
"size":1
}