具有某些键的桶的Sum Bucket聚合

时间:2018-01-23 13:12:32

标签: elasticsearch

我正在使用它来按type字段聚合我的文档:

       "aggs": {
        "types": {
          "terms": {
            "field": "type"
          },
          "aggs": {
            "my_sum": {
              "sum": {
                "field": "price"
              }
            }
          }
        },
        "total_sum": {
          "sum_bucket": {
            "buckets_path": "types.my_sum"
          }
        }
      }

因此,在每个存储桶中都有my_sum值(与该存储桶密钥类型相同的文档的所有价格的总和),total_sum是所有这些my_sum的总和。 }值。我真正需要的是仅当存储桶(my_sum)的密钥为1或2时才计算type值的总和。有没有办法做到这一点?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我刚刚发现弹性搜索聚合converting SoapUI XML to JMeter jmx using Taurus tool可以解决我的问题:

   auth = FirebaseAuth.getInstance();

    if (auth.getCurrentUser() != null) {

        String id = auth.getCurrentUser().getUid();

        DatabaseReference FirebaseRef = FirebaseDatabase.getInstance().getReference().child("users").child(id);

        FirebaseRef.child("flag").addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot snapshot) {

                if (snapshot.exists()) {
                    String loginflag = snapshot.getValue().toString();

                    if (loginflag.equals("0")) {
                        startActivity(new Intent(LoginActivity.this, HomeUsers.class));
                        finish();
                    } else if (loginflag.equals("1")) {
                        startActivity(new Intent(LoginActivity.this, HomeEducator.class));
                        finish();
                    }
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        });
    }