gpt4 book ai didi

android - Firebase:查询以根据条件排除数据

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:18:37 24 4
gpt4 key购买 nike

我可以使用 orderByChildequalTo 获取子项中特定值的数据(很酷,它也适用于嵌套子项)

private void getData() {
try {
final DatabaseReference database = FirebaseDatabase.getInstance().getReference();

database.child(Constants.TABLE_TASKS).orderByChild("user/id")
.equalTo("somevalue")
.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Timber.d(dataSnapshot.toString());
}

@Override
public void onCancelled(DatabaseError databaseError) {
}
});
} catch (Exception ex) {
ex.printStackTrace();
}
}

有没有一种简单的方法来获取未找到特定值的数据,基本上类似于 notEqualTo("somevalue")

最佳答案

Firebase 查询模型中,您无法过滤值的不等性

但是您可以测试是否缺少任何值(本质上:缺少属性)。例如使用此数据模型:

{
child1: {
"user": {
"id": 1,
"name": "puf"
}
},
child2: {
"user": {
"id": 2,
"name": "abe"
}
},
child3: {
"user": {
"id": 3
}
}
}

我可以查询没有 user/name 属性的 child :

ref.orderByChild('user/name').equalTo(null)

这导致唯一没有名字的 child :

child3

随意使用我的 jsbin 看看你是否更进一步:http://jsbin.com/liyibo/edit?js,console

更新:我知道我之前已经回答过这个问题,但没能更早找到它。这是骗局:is it possible query data that are not equal to the specified condition? .看起来我在那里有一个错误,因为显然我正在测试上面代码中是否缺少属性。

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

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com