2016-07-11 159 views
0

That's my Firebase Structure火力地堡查詢關鍵詞

我的代碼

FirebaseDatabase database = FirebaseDatabase.getInstance(); 
DatabaseReference myRef = database.getReference("stock"); 
Query i = myRef.orderByChild("keywords").equalTo("Hammer"); 
i.addValueEventListener(new ValueEventListener(){ 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     System.out.println(dataSnapshot.getValue());  
    } 

    @Override 
    public void onCancelled(DatabaseError databaseError) { 

    } 
}); 

我的問題的數組:我想查詢與關鍵字如只有一個項目。 「錘子」,但我只有零價值。如果我查詢「orderByChild(」keyword「)。equalTo(」Hammer「)」我得到相同的空值。請幫幫我。

+1

請在此處閱讀本指南以查詢問題:http://stackoverflow.com/help/how-to-ask –

+0

將代碼添加爲文本。幷包括什麼'myRef'指的是。 – adolfosrs

+0

@adolfosrs數據庫中沒有「股票」節點 –

回答

1

orderByChild只會查看您在/stocks中引用的分支的下一級子女。只有當您的孩子keywords/0/keyword右下角/stocks時,您的密碼纔有效。由於它的/stocks/inserate/0它不會工作。

Query i = myRef.child("inserate/0/keywords").orderByChild("keyword").equalTo("Hammer"); 

這會做的,但它可能不是你想要的。如果你想搜索所有iserates孩子,你應該對數據庫進行一些重構。