基础查询
POST http://127.0.0.1:9200/book/_search
- 1.简单查询
{
"query":{
"match_all":{}
}
}
- 2.条件查询
{
"query":{
"match":{
"title":"入门到精通"
}
},
"from":1,
"size":5,
"sort":{
"publish_date":{
"order":"asc"
}
}
}
- 3.聚合查询
{
"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.1全文本查询:针对文本类型(text)的数据
- --1.模糊匹配
{
"query":{
"match":{
"title":"PHP从入门到精通"
}
}
}
- --2.习语匹配
{
"query":{
"match_phrase":{
"title":"PHP从入门到精通"
}
}
}
- --3.多个字段模糊匹配查询
{
"query":{
"multi_match":{
"query":"PHP",
"fields":["title","author"]
}
}
}
- --4.1语法查询
{
"query":{
"query_string":{
"query":"(PHP AND 入门) OR 普改"
}
}
}
文本字段同时包含PHP和入门两个关键词或者文本字段包含普改
{
"query":{
"query_string":{
"query":"PHP",
"fields":["title","author"]
}
}
}
- --1.指定字段精确查询
{
"query":{
"term":{
"author":"普改"
}
}
}
- --2.范围查询
- --2.1数字范围
{
"query":{
"range":{
"word_count":{
"gte":"170000",
"lte":"200000"
}
}
}
}
- --2.2日期范围
{
"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会对查询结果做缓存,故速度比Query要快
{
"query":{
"bool":{
"filter":{
"term":{
"author":"普改"
}
}
}
}
}
{
"query":{
"bool":{
"must":{
"match":{
"title":"PHP从入门到精通"
}
},
"filter":{
"range":{
"word_count":{
"gt":170000
}
}
}
}
},
"from":1,
"size":1
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。