1、查询所有
GET order/_search
{
"query": {
"match_all": {}
},
size:10,
"_source":{
"include":["username","gamecode"],
"exclude":["gamename"]
}
}
size:分页大小
_source:指定doc返回的内容,示例中可简写为:"_source":["username","gamecode"]
2、条件查询 (terms、match、range)
GET order/_search
{
"query": {
"bool": {
"filter": {
"terms": {
"username": "test_user_01"
}
}
}
}
}
match与terms区别:terms精确匹配,match会分词然后进行匹配(前提是装有分词器,常用的中文分词器ik)
3、逻辑关联(must、must not、should)
4、聚合(sum、avg)
5、去重(cardinality、top hit、collapse)
GET order/_search
{
"aggs": {
"byOrderNo": {
"cardinality": {
"field": "byOrderNo.keyword"
}
}
}
}
GET order/_search
{
"aggs": {
"byOrderNo": {
"terms": {
"field": "byOrderNo.keyword"
},
"aggs":{
"bytime": {
"top_hits": {
"sort": [ "createtime.keyword": { "order": "desc"}],
"size": 1
}
}
}
}
}
}
GET order/_search
{
"collapse": {
"field":"orderNo.keyword",
"inner_hits": {
"name": "top_rated",
"size": 1
}
}
}