Elasticsearch查询,json格式查询,复杂查询

size作为一级筛选条件单独使用表示,表示只返回聚合结果,不返回具体数据。

{
“size”:0,
“query”: {
“match”: {
“uid”:”469″
}
}
}

运行结果:{
“took”: 0,
“timed_out”: false,
“_shards”: {
“total”: 1,
“successful”: 1,
“skipped”: 0,
“failed”: 0
},
“hits”: {
“total”: {
“value”: 236,
“relation”: “eq”
},
“max_score”: null,
“hits”: []
}
}

指定查询的返回结果 _source
在_source字段中直接指定需要返回的字段,类似sql语句的

select order_id,status,created_at from 表 where uid=469 order by cteated_at desc limit10

{
“_source”:[“order_id”,”status”,”created_at”],
“sort”:{
“created_at”:”desc”
},
“from”:0,
“size”:10,
“query”: {
“term”: {
“uid”:”469″
}
}
}

数值范围查询 range
range中有4个字段:(g是greater的缩写,t是than的缩写,l是less的缩写,e是equal的缩写)可以单个或者多个一起使用
        gt : 大于 > ,
        lt : < 小于,
        gte : <= 大于等于 ,
        lte :<=   小于等于 ,
{
“size”:0,
“query”:{
“range”:{
“money”:{
“gte”:”0.01″,
“lte”:”0.05″
}
}
}
}

should和terms的区别:

should可以连接多个不同的字段

{
“size”:0,
“track_total_hits”:true,
“query”:{
“bool”:{
“should”:[
{“match”:{“invoice.invoice_type”:”026″}},
{“match”:{“buyer.title”:”高灯”}}
]
}
}
}

terms只能连接一个字段的多个值

{
“size”:0,
“track_total_hits”:true,
“query”:{
“terms”:{
“red_status”:[2,5,8]
}
}
}

欢迎使用66资源网
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!
7. 本站有不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别!

66源码网 » Elasticsearch查询,json格式查询,复杂查询

提供最优质的资源集合

立即查看 了解详情