将纪元转换为日期时间

时间:2018-03-13 09:21:36

标签: sesam

我有以下实体:

{
  "q": 524480,
  "t": "~f1520825387781.23",
  "v": "~f8058.0147682"
}

我如何转换" t"值到日期时间。该值是纪元以来的秒数。

1 个答案:

答案 0 :(得分:2)

您可以使用datetime函数,但首先必须将纪元转换为表示纪元以来纳秒的整数。

{
  "_id": "my-pipe",
  "type": "pipe",
  "source": {
    "type": "embedded",
    "entities": [{
      "_id": "foo",
      "q": 524480,
      "t": "~f1520825387781.23",
      "v": "~f8058.0147682"
    }]
  },
  "transform": {
    "type": "dtl",
    "rules": {
      "default": [
        ["add", "timestamp",
          ["datetime",
            ["integer",
              ["*", 1e6, "_S.t"]
            ]
          ]
        ]
      ]
    }
  }
}

这会给你:

[
  {
    "_id": "foo",
    "timestamp": "~t2018-03-12T03:29:47.78123Z"
  }
]