【发布时间】:2017-02-04 19:42:33
【问题描述】:
我必须汇总 firebase 数据库中的值。
注意:这是一个简化的非真实项目,以便于解释。因此,如果 JSON 数据有错误,我们深表歉意。这是为了演示目的,我会根据我的实际需要进行调整。 带有真实数据的完整项目描述在这里:best practize summarize FirebaseDatabase values,但似乎过于具体。
假设我每次都在秤上收集多辆汽车的重量数据。
所以一些示例数据可能如下所示:
weightTable{
weightKey1{
"carKey" : "carOne",
"carWeight" : 1.4
},
weightKey2{
"carKey" : "carOne",
"carWeight" : 1.9
},
weightKey3{
"carKey" : "carTwo",
"carWeight" : 1.1
},
weightKey4{
"carKey" : "carThree",
"carWeight" : 1.7
}
}
我现在想要一个单独的“表格”,其中只有所有重量数据的摘要,按“carKey”分组。
所以我明白了
summTable{
"carOne"{
"weightSum" : 3.3,
"cnt" : 2
},
"carTwo"{
"weightSum" : 1.1,
"cnt" : 1
},
"carThree"{
"weightSum" : 1.7,
"cnt" : 1
}
}
“weightSum”是“carWeight”的摘要。
“cnt”是汇总数据的计数。
最后我想要一张表格,列出所有汽车的摘要
totalCarWeight{
"weightSum" : 6,1,
"cnt" : 4
}
sumTable 用于填充 Android 应用和网页中的视图以显示摘要。如果他们单击摘要中的一辆车,他们将获得这辆车的详细视图,并收集每个重量。 因此,汇总数据应在尽力而为的基础上保持最新。
我看到的可能问题:
设备无网络连接,将数据添加到“weightTable”;
多设备添加数据到“weightTable”。
任何提示如何做到这一点?
在普通的 SQL 数据库上,我们可以要求数据库对查询中的条目进行汇总或计数。
希望现在更容易理解和回答。
Android 或 javascript 中的一些指导会很棒。
【问题讨论】:
标签: javascript android firebase firebase-realtime-database