java - 如何在firebase数据库android java中使用where查询
解决方案
我想更新 classection=Six:B 的所有学生
为此,您需要使用查询来根据“类”属性过滤学生。要同时执行更新,例如,将值从“Six:B”更改为“Six:C”,请参阅使用以下代码行:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference studentsRef = rootRef.child("Students");
Query classSectionQuery = studentsRef.orderByChild("classection").equalTo("Six:B");
classSectionQuery.get().addOnCompleteListener(new OnCompleteListener<DataSnapshot>() {
@Override
public void onComplete(@NonNull Task<DataSnapshot> task) {
if (task.isSuccessful()) {
for (DataSnapshot ds : task.getResult().getChildren()) {
ds.child("classection").getRef().setValue("Six:C");
}
} else {
Log.d(TAG, task.getException().getMessage()); //Don't ignore potential errors!
}
}
});
此代码的结果将是所有学生的更新“WHERE”类别等于“Six:B”。
推荐阅读
- swift - Swift Combine:这些多播功能有什么用,我该如何使用它们?
- python-3.x - 在每条记录中不包含 (") 的情况下写入 CSV
- c++ - 你能解释一下这个程序中array+5的用途吗?
- android - 作为照片拍摄时图像会旋转
- c99 - 如何在嵌入式 ANSI C 中制作锁定/临界区?
- c - CS50 第 1 周,学分 - 如果比较问题?整数大小限制?
- python - 用参数装饰类方法
- regex - 正则表达式模式匹配失败
- c# - appsettings.Production.json 在发布后具有来自 appsettings.json 的值
- javascript - 如何通过单击功能获取 div 中元素的详细信息