繁体   English   中英

在kFirebaseServerValueTimestamp上执行数学运算

[英]Performing Mathematical Operations on kFirebaseServerValueTimestamp

在这篇文章的评论之一中: firebaseArray降序? ,Firebase员工建议将时间戳乘以-1,以便按日期降序排列。

这是我正在尝试实现的想法,但是,由于kFirebaseServerValueTimestampNSDictionary ,其键为“ .sv”,值为“ timeStamp”,因此我很难做到。

当我尝试隔离该值时,我所能得到的只是一个NSString ,上面写着“ timeStamp”。

有没有办法在kFirebaseServerValueTimestamp上执行数学运算?

kFirebaseServerValueTimestamp是一个属性,实际上用作占位符,Firebase在写入数据时会填充该占位符。

从文档:

服务器值-您可以在写入Firebase数据库之前将其自动填充的值或优先级写入Firebase数据库的占位符值。

kFirebaseServerValueTimestamp-自Unix时代以来的毫秒数

因此,例如,如果您想将时间戳基于Firebase服务器时间,则

Firebase *timeStampsRef = [self.myRootRef childByAutoId];

[timeStampsRef setValue:kFirebaseServerValueTimestamp];

Firebase *timeStampsRef2 = [self.myRootRef childByAutoId];

[timeStampsRef2 setValue:kFirebaseServerValueTimestamp];

将导致以下

-K861VyNBisoAL14dHsk: 1452890788194
-K861VyNBisoAL14dHsl: 1452890788195

如果要对Firebase数据进行排序,则应包括一个timestamp属性,作为要排序的节点的子级。

pizza_time
  node_id_0
   timeStamp: 20160109153000
   location: "Pizza House"
  node_id_1
   timeStamp: 20160110153000
   location: "Pizza Place"
  node_id_2
   timeStamp: 20160114153000
   location: "Pizza Busters"

然后,您可以按日期排序,查询从一个日期到另一个日期或各种其他数据杂技的节点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM