按键查询和按日期排序

时间:2015-03-06 23:35:29

标签: firebase

我有一个包含很多"列表的数据库"结构如下:

Listings

我希望获得10个列表,以特定优先级值开始或结束,大小值(子节点)范围在9到10.5之间,并按优先级排序结果。

我已经查看过大量的SO帖子和Firebase示例,但我似乎找不到任何解决方案。

在Firebase中,这是不是真的可以吗?据我所知,这是一个非常常见的用例。

有什么解决方案吗?如果没有,你会如何解决它?

1 个答案:

答案 0 :(得分:6)

您可能需要查看Firebase文档中的Complex Queries

查看范围查询。 startAt()endAt()允许您通过设置查询的起点和终点来查找具有特定尺寸的鞋子。

例如,如果我们想要查找介于910.5之间的所有鞋子,请合并orderByChild()startAtendAt。类似的东西:

var ref = new Firebase(URL);
ref.orderByChild("size").startAt("9").endAt("10.5").on("child_added", function(snapshot) {
    console.log(snapshot.key());
});

如果您可以提供代码示例,那么它将更容易确定解决方案。如果您想通过多个键订购查询,则可能需要调整数据模型。