android - Firebase 查询数据

标签 android firebase firebase-realtime-database

{
  "random_key 1" : {
    "id": 0,
    "text": "This is text"
  },
  "random_key 2" : {
    "id": 1,
    "text": "This is text"
  }
}

如果我像这样存储我的数据,并且我想获取 id 等于 0 的节点。我该怎么做?

上面是 issue 的 child ,它是 root 的 child 。

最佳答案

在您的情况下,您必须像这样设置一个查询:

DatabaseReference reference = FirebaseDatabase.getInstance().getReference();

Query query = reference.child("issue").orderByChild("id").equalTo(0);
query.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        if (dataSnapshot.exists()) {
            // dataSnapshot is the "issue" node with all children with id 0
            for (DataSnapshot issue : dataSnapshot.getChildren()) {
                // do something with the individual "issues"
            }
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {

    }
});

关于android - Firebase 查询数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39024702/

相关文章:

Android Gradle 从 APK 中排除 jar

android - SplitApkBundle 无效。该 bundle 针对未知语言 : [gr]. google play console

firebase - RNFirebase 邮箱验证

ios - Swift 3 Firebase 更新代码转换 - 排序

swift - 添加工具栏 JSQMessagesViewController

android - 如何解决 Android studio 中的多个 dex 文件错误

android - 仅在数据更改时调用 LiveData.observe() 回调并忽略 Controller (Activity/Fragment)的生命周期更改

android - 即使本地缓存可用且未更改,Firebase 单值监听器也会调用服务器

javascript - 如何处理带有条件分支的 TypeScript Promise?

javascript - 在 For 循环中对异步调用进行排序 - Javascript