如何基于多个等于 [重复] 查询 Firebase
Posted
技术标签:
【中文标题】如何基于多个等于 [重复] 查询 Firebase【英文标题】:How to Query Firebase based on Multiple Equal to [duplicate] 【发布时间】:2020-03-30 09:55:41 【问题描述】:我有以下火力基地结构。由此我需要根据查询where Dstatus=ok and Drmoble=mobile no
获取数据
到目前为止,我已经写了这个仅适用于单个值。如何将两者结合起来
mReferenceBooks.orderByChild("Drmoble").equalTo(mobile_no).addValueEventListener(new ValueEventListener()
@Override
public void onDataChange(DataSnapshot dataSnapshot)
【问题讨论】:
Firebase 数据库查询只能对单个属性进行排序/过滤。在许多情况下,可以将要过滤的值组合成单个(合成)属性。有关此方法和其他方法的示例,请在此处查看我的答案:***.com/questions/26700924/… 【参考方案1】:在firebase实时数据库中,他们没有AND
查询,这意味着你不能这样做:
mReferenceBooks.orderByChild("Drmoble").equalTo(mobile_no).orderByChild("DStatus").equalTo("ok")
要解决此问题,您可以创建另一个包含DStatus
和Drmoble
的字段,例如:
randomId
dstatus-drmoble : "01810000-ok"
那么你可以使用下面的查询:
mReferenceBooks.orderByChild("dstatus-drmoble").equalTo("01810000-ok").addValueEventListener(new ValueEventListener()
【讨论】:
以上是关于如何基于多个等于 [重复] 查询 Firebase的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式获取 Firebase 中的注册用户列表 [重复]
如何按两个字段对 Firebase 记录进行排序(Android)[重复]