2016-07-11 162 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孩子,你应该对数据库进行一些重构。