Is there any query to find the sum of quantity of child having the same name in Firebase Database(Android Studio)?

huangapple 未分类评论49阅读模式
英文:

Is there any query to find the sum of quantity of child having the same name in Firebase Database(Android Studio)?

问题

以下是翻译好的代码部分:

final Query query2 = billdata.orderByChild("name");
query2.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
        int sum = 0;
        for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
            int total1 = Integer.parseInt(String.valueOf(dataSnapshot1.child("qty").getValue()));
            sum = sum + total1;
        }
        Toast.makeText(this, "合计:" + sum, Toast.LENGTH_LONG).show();
    }
});
英文:

Query to find the sum of the quantity of item having the same name...enter image description here

final Query query2 = billdata.orderByChild ( "name" );
        query2.addListenerForSingleValueEvent ( new ValueEventListener ()
        {
            @Override
            public void onDataChange(@NonNull DataSnapshot dataSnapshot)
            {
                for ( DataSnapshot dataSnapshot1 : dataSnapshot.getChildren())
                {
                    int total1 = Integer.parseInt ( String.valueOf ( dataSnapshot1.child ( "qty" ).getValue () ) );
                    int sum=0;
                    sum=sum+total1;
                    Toast.makeText (this,"Whole Total"+sum,Toast.LENGTH_LONG ).show ();

答案1

得分: 0

以下是翻译好的内容:

没有特定的查询来计算子项的总和,您想要像这样做:

// 像这样在全局范围内声明一个 int 变量
int globalsum = 0;

final Query query2 = billdata.orderByChild("name");
query2.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
        int sum = 0;
        for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
            int total1 = Integer.parseInt(String.valueOf(dataSnapshot1.child("qty").getValue()));
            
            sum = sum + total1;
            globalsum = sum;
            Toast.makeText(this, "整体总计" + sum, Toast.LENGTH_LONG).show();
        }
    }

    // 其他监听器方法...
});
英文:

There are no specific query for calculating the sum of the child, you want to do like this

// declare an int variable in global like this  
             int globalsum=0;

    final Query query2 = billdata.orderByChild ( "name" );
            query2.addListenerForSingleValueEvent ( new ValueEventListener ()
            {
                @Override
                public void onDataChange(@NonNull DataSnapshot dataSnapshot)
                {
                    int sum=0;
                    for ( DataSnapshot dataSnapshot1 : dataSnapshot.getChildren())
                    {
                        int total1 = Integer.parseInt ( String.valueOf ( dataSnapshot1.child ( "qty" ).getValue () ) );
                        
                        sum=sum+total1;
                        globalsum=sum;
                        Toast.makeText (this,"Whole Total"+sum,Toast.LENGTH_LONG ).show ();

huangapple
  • 本文由 发表于 2020年4月9日 13:16:53
  • 转载请务必保留本文链接:https://java.coder-hub.com/61114432.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定