如何从Firebase中的节点获取所有值的总和?

时间:2017-12-04 03:51:27

标签: java android firebase firebase-realtime-database

这是我的数据库结构:

JSON

我希望得到所有子值的总和,例如我希望得到de值“5”,它是节点“UNICARIBE”的所有de值的总和

1 个答案:

答案 0 :(得分:3)

要计算所有这些值,请使用以下代码:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference unicaribeRef = rootRef.child("Unicaribe");
ValueEventListener eventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        int total = 0;
        for(DataSnapshot ds : dataSnapshot.getChildren()) {
            int value = ds.getValue(Integer.class);
            total =+ value;
        }
        Log.d("TAG", String.valueOf(total));
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {}
};
unicaribeRef.addListenerForSingleValueEvent(eventListener);

您的输出将为5