考虑到火力地堡数据库的结构如下:火力地堡数据库排序更深的孩子
- 根
- 的Game1
- $ playerUidA
- 得分:50
- $ playerUidB
- 得分:10
- .....
- $ playerUidA
- GAME2
- $ playerUidC
- 得分:20
- $ playerUidD
- 得分:30
- .....
- $ playerUidC
- game3
- .....
- 的Game1
我想运行一个将返回所有游戏节点的查询,其中每个游戏节点(玩家)的孩子将根据得分进行排序。游戏节点包含每个玩家的UID,并且每个UID节点包含玩家的分数。我也存储其他数据,但是,为了这个例子,我将只使用分数。
我可以使用单个查询吗?类似于 rootRef.child("root").orderByChild("score")
?不幸的是,似乎没有工作。
或者实现这一目标的唯一方法是通过手动排序客户端上的项目?
@Puf - 希望你会回答这个问题:)
我使用'“.indexOn”:‘分数’'中的规则数据库和我可以检索一个单一的游戏节点,玩家按照得分排序。问题是,我无法检索**所有**游戏节点,其中每个游戏节点将按照分数排序其子节点(玩家)。这不能用单个查询来完成。我必须为每个游戏节点运行不同的查询,或手动对客户端上的子项进行排序。 PS。当然,我不是试图获取整个数据库,结构只是一个例子。 – MScott
刚刚更新了答案。希望有所帮助。 – adolfosrs
嘿@MScott,它工作?如果您仍然有任何疑问,请告诉我。 – adolfosrs