2017-05-02 8 views
0

データの取得に問題があります。ここfirebaseからデータを検索する方法

final FirebaseDatabase database = FirebaseDatabase.getInstance(); 
private DatabaseReference databaseReference = database.getReference(FirebaseInstanceId.getInstance().getToken()); 

databaseReference.child("age").setValue(sbAge.getProgress()); 
    databaseReference.child("status").setValue(spStatus.getSelectedItem().toString()); 

if(rbFemaleMe.isChecked()) 
{ 
    databaseReference.child("sex").setValue("Female"); 
} 
else if(rbMaleMe.isChecked()) 
{ 
    databaseReference.child("sex").setValue("Male"); 
} 

は私のデータベースです: db

にはどうすれば= 27、年齢を持つすべてのユーザーを得ることができますか?私は、DBにデータを保存しています以下のコードで

答えて

0

equalTo()方法は、私たちは完全一致に基づいてフィルタリングすることができます役立ちます、希望を、これを試してみてください。他の範囲クエリーの場合と同様に、一致する子ノードごとに起動します。たとえば、私たちは27歳の持っているすべてのユーザーを見つけるために、次のクエリを使用することができます。もっと行くために私のために正常に動作して

databaseReference.orderByChild("age").equalTo(27).addChildEventListener(new ChildEventListener() { 
    @Override 
    public void onChildAdded(DataSnapshot dataSnapshot, String prevChildKey) { 
     System.out.println(dataSnapshot.getKey()); 
    } 

    // ... 
}); 

その

がそれに役立つと期待している。.. を here

0

希望するデータを取得するためにカスタムモデルを使用する必要があります。

databaseReference.orderByChild("age").equalTo(27).addListenerForSingleValueEvent(new ValueEventListener() { 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     result = dataSnapshot.getValue(); 

    } 

    @Override 
    public void onCancelled(FirebaseError firebaseError) { 

    } 
}); 

これは

関連する問題