java - 我想按值从 Firebase 实时数据库中删除值,但我没有它的 key

标签 java android firebase firebase-realtime-database

我想按值从 firebase 实时数据库中删除值,但我没有它的 key

我有这样的数据库:

-root
  |
   --fittingHeight
     |
      --"timeStamp1":"1.1"
     |
      --"timeStamp2":"2.1" 

我想删除此数据库中的 1.1,但没有 key (timestamp1)

最佳答案

您需要查询集合,然后按其键对其进行排序

 Query dbQuery = myRef.orderByKey();

然后您需要为其添加监听器并在结果上使用 for 循环

dbQuery.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
        for(DataSnapshot dst : dataSnapshot.getChildren()){
            if(...)
                myRef.child(dst.getKey()).removeValue();
                    }
            }
       }

这将删除该键中的所有值,因此如果您想删除该键中的特定值,请在其结果上添加另一个 for 循环。

关于java - 我想按值从 Firebase 实时数据库中删除值,但我没有它的 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61649990/

相关文章:

java - android studio 生成Javadoc失败

android - 关于 ContentObserver 的内存泄漏

ios - FIRAuthUI FriendlyPix 项目错误

ios - 如何正确使用scrollView?

java - Java 中的未命名包部分属于哪个模块?

java - 在 java 中使用 jdbc 驱动程序缓慢的 sqlite 插入

java - 运行 Spring Boot JAR 应用程序不会打开 URL(https ://localhost:8080/) with a browser

java - 如何从java运行bat文件,参数(即带完整路径的文件名)具有带空格的文件夹名称

android - java.lang.nullpointerException错误: app crashes

javascript - 如何使用 firebase 在 React 中创建管理状态?