如何查询我的用户ID以比较每个人的统计信息?
我的firebase数据库是这样的:
" <URL>.firebase.com/" {
"users/"
"facebook:283638484/"
"name/"
"tokens/"
"spins/"
"facebook:283478133/"
"name/"
"tokens/"
"spins/"
同样的问题改写,我可以搜索所有&#34;脸书:38362728&#34;等用户,以获得具有最高代币的前三名用户的列表?
我想在我的应用中创建排行榜。用户全部按用户ID保存,每个用户都有自己的个人统计信息。我想查看&#34;令牌的价值&#34;在每个用户内部,并对它们进行排序,以便显示前三个。有没有办法在网址中使用uid的通配符,以便我可以查看所有内容?如果/当应用程序增长到一个大的大小时,会查询每个用户填充此列表,需要多长时间?我读到了.indexOn,但不确定这是否适合考虑节点结构。 提前谢谢!
答案 0 :(得分:1)
如果我正确理解了这个问题,我将提供一个简化的结构:
users
user_id_0
tokens: 20
user_id_1
tokens: 5
user_id_2
tokens: 12
然后检索前两个(基于排序顺序)
Query queryRef = ref.orderByChild("tokens").limitToFirst(2);
queryRef.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot snapshot, String previousChild) {
System.out.println(snapshot.getValue()); //?
}
// ....
});
我不是Android开发人员所以我对错误的代码结构道歉。