【问题标题】:How to Query Firebase based on Multiple Equal to [duplicate]如何基于多个等于 [重复] 查询 Firebase
【发布时间】: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 数据库查询只能对单个属性进行排序/过滤。在许多情况下,可以将要过滤的值组合成单个(合成)属性。有关此方法和其他方法的示例,请在此处查看我的答案:stackoverflow.com/questions/26700924/…

标签: android firebase firebase-realtime-database


【解决方案1】:

在firebase实时数据库中,他们没有AND查询,这意味着你不能这样做:

mReferenceBooks.orderByChild("Drmoble").equalTo(mobile_no).orderByChild("DStatus").equalTo("ok")

要解决此问题,您可以创建另一个包含DStatusDrmoble 的字段,例如:

randomId
     dstatus-drmoble : "01810000-ok"

那么你可以使用下面的查询:

mReferenceBooks.orderByChild("dstatus-drmoble").equalTo("01810000-ok").addValueEventListener(new ValueEventListener() {

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    相关资源
    最近更新 更多