nested 查询应用

前言

     有这样的四条这样的数据:

 

需求

  要统计出status为200的条数,可以看到这四条数据的ajaxs字段是json类型的数据集合,因此可能在一条数据中存在status为200的多条数据。

查询过程

就用nested聚合查询来试试:

可以看到有统计了两条,查看一下明细:

看到上面统计的是四条数据中有status为200的就算一条记录,而我们要的应该是(1,2)。继续搞起:

发现很奇怪怎么是200和400,不应该是1和2吗???

这里发现:sum(nested(ajaxs.status))求的是将满足条件的ajaxs.status的值进行了相加,所以需要将统计的(200,400)取出来业务上去除以200才可以满足。这里还需要注意一点的是:status必须是数值型的才可以。

参考我的另一篇文章:https://www.cnblogs.com/wynjauu/articles/9215658.html

 

posted @ 2018-06-25 11:57  舞羊  阅读(140)  评论(0编辑  收藏  举报