我们可以像查询中的sql那样在firebase上进行查询吗
我想从父节点中选择剑龙和pegosaurus。这类似于在查询中,我们在查询中提供逗号分隔的值。例如我们可以像查询中的sql那样在firebase上进行查询吗,firebase,firebase-realtime-database,Firebase,Firebase Realtime Database,我想从父节点中选择剑龙和pegosaurus。这类似于在查询中,我们在查询中提供逗号分隔的值。例如 从my_表中选择*,其中id位于('stegosaurus','pegosaurus') 我已经阅读了firebase的文档,没有任何帮助。任何建议都会非常有用。您只能执行以下操作: { "lambeosaurus": { "height" : 2.1, "length" : 12.5, "weight": 5000 }, "stegosaurus": {
从my_表中选择*,其中id位于('stegosaurus','pegosaurus')代码>
我已经阅读了firebase的文档,没有任何帮助。任何建议都会非常有用。您只能执行以下操作:
{
"lambeosaurus": {
"height" : 2.1,
"length" : 12.5,
"weight": 5000
},
"stegosaurus": {
"height" : 4,
"length" : 9,
"weight" : 2500
}
"pegosaurus": {
"height" : 4,
"length" : 9,
"weight" : 1000
}
}
在这里,您检查键是否等于pegosaurus,然后循环并检索子数据。可能重复:您检查答案了吗?是的。我尝试过这些解决方案,但都不管用。因此,我对调用进行分页,并检查我的值是否存在。我们不得不一次又一次地请求使用equalto param中的密钥,所以这也不适合我。firebase没有提供任何方法可以在查询中作为SQL执行,因为firebase中的所有数据都存储在JSON中。@aqiltariq65是的,我给您的解决方案是唯一的解决方案
var db = firebase.database();
var ref = db.ref("users");
ref.orderByKey().equalTo("pegosaurus").on("value", (snapshot) => {
snapshot.forEach((childSnapshot)=> {
let length = childSnapshot.val().length;
let height=childSnapshot.val().height;
let weight=childSnapshot.val().weight;
});
});