【发布时间】:2018-09-29 04:15:32
【问题描述】:
我们正在使用 firebase 实时数据库并拥有订单数据。日期存储为字符串值,我们希望查询最近一周的订单。数据看起来像
"orders" : {
"-LM_h6nKUKQY0wyqSCz4" : {
"order" : {
"_couponDiscount" : "382.5",
"_date" : "17-9-2018",
"_orderNumber" : "MannuSharma-21581",
"_orderStatus" : "Delivered",
"_orderTotal" : 450,
}
},
"-LMatbq6prD4kNtTqzmx" : {
"order" : {
"_date" : "19-9-2018",
"_orderNumber" : "AnkushVerma-22991",
"_orderStatus" : "Delivered",
"_orderTotal" : 600,
}
},
"-LMaxcGocVxe9nnfFnT2" : {
"order" : {
"_date" : "18-9-2018",
"_orderNumber" : "MannuSharma-40284",
"_orderStatus" : "Delivered",
"_orderTotal" : 450,
}
}
_date 是字段,在这种情况下,假设我需要获取日期 17 和 18 的数据。
startAt 和 endAt 似乎会按字典顺序执行,那么我如何将这些数据视为日期?
【问题讨论】:
-
查询过去 6 个月的数据是否明智?我们正在查看它以按天、周、月等生成销售图表。
-
您会很快发现 Firebase(以及大多数其他 NoSQL 数据库)的查询功能对于此类用例非常有限。更常见的是对报告中的所有数据进行汇总。所以:当你写一个订单时,还要更新订单所属的周、月等的总计。以这种方式显示报告非常简单。
标签: firebase firebase-realtime-database