Firebase在查询后获取子值

时间:2017-10-30 21:38:57

标签: java android firebase firebase-realtime-database

所以我有一个如下所示的firebase结构: enter image description here

我想获得'电话'特定值的人的'购物'

Query address=databaseReference.child("Users").orderByChild("Phone").equalTo(phone);

所以使用了上面的查询,但是......我不知道如何访问结果的子节点。获得上述查询后,假设可变电话 1234567890 ,如何获取此特定用户的购物电子邮件的值。我尝试了不同的方法,但我认为我没有做对。 :/

我想,一旦我看到一个有效的例子,我就能将它应用到我的身上。

1 个答案:

答案 0 :(得分:1)

DatabaseReference address= 
database.getReference("Users").orderByChild("Phone").equalto(phone);

address.addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(DataSnapshot dataSnapshot){
for(DataSnapshot data: dataSnapshot.getChildren()) {
String value=data.child("Shop").getValue().toString();
}
}

 @Override
    public void onCancelled(DatabaseError databaseError) {
    }
});

您正在查询Users,然后执行条件orderByChild("Phone").equalto(phone)。所以,就像你在做where Phone=value_phone