是否可以通过这种方式从Firebase检索数据?

时间:2020-02-26 17:14:43

标签: android firebase firebase-realtime-database

我想知道如何根据对象内容检索该对象的密钥。我正在使用实时Firebase数据库。

JSON代码:

"Places" : {
"-M11-OIIHbKTVqCJ-Swv" : {
  "name" : "Farmacia Pagani Dr. Roberto",
  "others" : {
    "Abilify" : 100,
    "Acetaminophen" : 120,
    "Acyclovir" : 140,
    "Adderall" : 160
  }
},
"-M11-OJJCGAPdJUknLXX" : {
  "name" : "FARMACIA DR. TUMIATTI MARIANO",
  "others" : {
    "Abilify" : 100,
    "Acetaminophen" : 120,
    "Acyclovir" : 140,
    "Adderall" : 160
  }
}

如果我的名字是:Farmacia Pagani Roberto Dr. Roberto,我想检索M11-OIIHbKTVqCJ-Swv“

我写的代码:

mUserDatabase = FirebaseDatabase.getInstance().getReference("Places");

Query query = mUserDatabase.orderByChild("name").equalTo(nameOfThePharmacy);
        query.addListenerForSingleValueEvent(new ValueEventListener() {
                                                 @Override
                                                 public void onDataChange(DataSnapshot dataSnapshot) {
                                                     System.out.println("The key is : "+dataSnapshot.getKey());

                                                 }

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

此代码无效,返回:“ Places”,但我想要包含与= ad example Farmacia Pagani Dr. Roberto相等的字段名称的对象的键,输出应为:-M11-OIIHbKTVqCJ -Swv

0 个答案:

没有答案