按日期范围查询Firebase

时间:2015-01-12 18:20:44

标签: javascript firebase

我的firebase数据如下所示:

{
  "lambeosaurus": {
    "date" : 1420753443,
    "length" : 12.5,
    "weight": 5000
  },
  "stegosaurus": {
    "date" : 1429053443,
    "length" : 9,
    "weight" : 2500
  }
}

我正在寻找一种使用自定义日期范围过滤日期的方法。 我在网上看过一些他们查询日期的例子,但时间戳一直是关键,在我的情况下是不可能的。

相关部分的文档可以在这里找到: https://www.firebase.com/docs/web/guide/retrieving-data.html#section-queries

仍然支持实时更新,这一点非常重要。我也只想确定符合标准的所有项目的数量。我对每个节点的数据点都不感兴趣。

1 个答案:

答案 0 :(得分:32)

您似乎可以使用orderBychild()方法按子键或属性(即weightlengthdate)进行排序。如果你使用startAt()& endAt(),我们可以构建您正在寻找的查询:

var startDate = 14200000000;
var endDate = 14300000000;

ref.orderByChild("date").startAt(startDate).endAt(endDate)
  .on("child_added", function(snapshot){
    console.log("got the data!", snapshot);
  });