Azure 数据工厂映射数据流:新纪元时间戳到日期时间



我有一个基于 JSON 的源,我想使用 ADF 映射数据流进行转换。我有一个包含纪元时间戳值的字符串,我想将其转换为日期时间值,以便稍后将其沉入 Parquet 文件中。

你知道办法吗?这种语言的文档在这里。

源文件:

{
"timestamp":"1574127407",
"name":"D.A."
}

使用 toTimestamp(( 并将您希望的格式设置为第二个参数

toTimestamp(1574127407*1000l)

从字符串:

toTimestamp(toInteger(toString(byName('timestamp')))*1000l,'yyyy-MM-dd HH:mm:ss')

我遇到了各种 13 位数字的纪元时间戳值,即它们甚至具有毫秒的详细信息。

在这种情况下,使用"toInteger"转换为整数将不起作用,而是将值保留为 NULL。因此,要解决此问题,我们需要使用toLong将其转换为Long,如下所示:

toTimestamp(toLong(toString(created)),'yyyy-MM-dd HH:mm:ss')

在上面的表达式中,"created"是一个字段,其值是13位纪元时间戳,类似于这个created='1635359043307'。

在这里,toTimestamp 返回具有上述日期格式的日期时间戳。

仅供参考,您可以使用此站点 https://www.epochconverter.com/检查纪元时间戳到人类日期。

最新更新