我只想从最近的50个节点中找到最大值。我曾经使用orderByChild和limitToLast方法,但是它从所有节点中查找最大值,而不仅仅是从最近50个节点中查找。 这是我的数据库:
我的代码:
void print(Ng *a) {
printf("Username: %s",a->username);
}
因此,如您所见,我尝试从最近的50个节点中找到hum变量的最大值。 附言新节点不断出现在数据库中,因此最大值应实时每50个值更改
答案 0 :(得分:0)
如果您想要最多50个最近的节点,则尝试按以下两个属性进行排序:
Firebase数据库查询只能对单个属性进行排序/过滤。
在许多情况下,可以将要过滤的值组合为单个(合成)属性。有关此方法和其他方法的示例,请在此处查看我的答案:http://stackoverflow.com/questions/26700924/query-based-on-multiple-where-clauses-in-firebase。但我认为这对您来说不可能。
我能想到的最好的方法是只听最后50个节点,然后根据客户端的湿度对其进行重新排序。