Ios Firebase-如何检索日期范围内的对象?
我在Firebase中有下一个JSON结构:Ios Firebase-如何检索日期范围内的对象?,ios,swift,firebase,firebase-realtime-database,Ios,Swift,Firebase,Firebase Realtime Database,我在Firebase中有下一个JSON结构: { "-KGX6kYg1NO6d9hn-8um" : { "phase" : "A", "timestamp" : "12-18-2015 19:43:37" }, "-KGXOGSxa3vompZX9UO_" : { "phase" : "B", "timestamp" : "03-28-2016 15:28:21" }, "-KMUvszD-vm3Nu02sofd" : { "phase
{
"-KGX6kYg1NO6d9hn-8um" : {
"phase" : "A",
"timestamp" : "12-18-2015 19:43:37"
},
"-KGXOGSxa3vompZX9UO_" : {
"phase" : "B",
"timestamp" : "03-28-2016 15:28:21"
},
"-KMUvszD-vm3Nu02sofd" : {
"phase" : "A",
"timestamp" : "04-03-2014 03:57:56"
}
}
是否可以通过时间戳键过滤日期范围内的对象?。。例如,我想获取时间戳为2015年1月到今天的对象。如果不可能,按日期过滤对象的更好方法是什么?。。。我正在开发一个iOS应用程序
谢谢。您可以按
时间戳对快照数据进行排序,并定义一个时间戳
限制,从中获取数据。
例如,如果希望所有数据来自特定的时间戳timestamp 1
,则引用处理程序应如下所示:
let refHandle = tableRef.queryOrderedByChild("timestamp").queryEndingAtValue("timestamp1").observeEventType(FIRDataEventType.Value, withBlock: { (snapshot) in
for item in snapshot.children {
}
})
您还可以通过添加queryLimitedToLast
或queryLimitedToFirst
来应用所需的记录数,如:
let refHandle = tableRef.queryOrderedByChild("timestamp").queryEndingAtValue("some_time_stamp").queryLimitedToLast(kPostLimit + 1).observeEventType(FIRDataEventType.Value, withBlock: { (snapshot) in
for item in snapshot.children {
}
})
此外,您还需要了解以下有关Firebase中常见sql查询的内容。您可以按时间戳对快照数据进行排序,并定义一个时间戳限制,从中获取数据。
例如,如果希望所有数据来自特定的时间戳timestamp 1
,则引用处理程序应如下所示:
let refHandle = tableRef.queryOrderedByChild("timestamp").queryEndingAtValue("timestamp1").observeEventType(FIRDataEventType.Value, withBlock: { (snapshot) in
for item in snapshot.children {
}
})
您还可以通过添加queryLimitedToLast
或queryLimitedToFirst
来应用所需的记录数,如:
let refHandle = tableRef.queryOrderedByChild("timestamp").queryEndingAtValue("some_time_stamp").queryLimitedToLast(kPostLimit + 1).observeEventType(FIRDataEventType.Value, withBlock: { (snapshot) in
for item in snapshot.children {
}
})
此外,您还想了解以下有关Firebase中常见sql查询的内容。如果您可以将时间戳存储为unix时间戳而不是日期格式,那就更好了。在这种情况下,基于时间戳的过滤将很容易。如果可以将时间戳存储为unix时间戳而不是日期格式,则效果会更好。在这种情况下,基于时间戳的过滤将很容易。