从Firebase dB查询

问题描述 投票:1回答:1

我是Firebase的新手,想知道如何在给定一个特定值(如名称)的情况下检索所有条目。我的数据库是这样的:

{
  "-L6wXAM4Yt6OeUx6kLM9" : {
    "date" : "Tue Mar 06 14:17:53 GMT-04:00 2018",
    "names" : "Raamon"
  },
  "-L6wXAM84ti-Ea0vzKfx" : {
    "date" : "Tue Mar 06 14:17:53 GMT-04:00 2018",
    "names" : "Anne"
  },
  "-L6whnSSZXHxdjPvGgKI" : {
    "date" : "Tue Mar 06 15:08:41 GMT-04:00 2018",
    "names" : "Anne"
  }
}

我的规则:

{
  "rules": {
    ".read": "auth == null",
    ".write": "auth == null"
  }
}

我应该使用查询功能吗?或者是其他东西?

java android firebase
1个回答
1
投票

试试这个:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
Query q = ref.orderByChild("names").equalTo(Raamon);
q.addListenerForSingleValueEvent(new ValueEventListener() {
   @Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot datas: dataSnapshot.getChildren()){
   String dates=datas.child("data").getValue().toString();
     }
   }   
   @Override 
 public void onCancelled(DatabaseError databaseError) {
      }
  });

例如,使用一个等于name的特定值Raamon,您可以检索与之相关的date

© www.soinside.com 2019 - 2024. All rights reserved.