【发布时间】:2017-02-15 11:07:04
【问题描述】:
我正在尝试学习 Spark,我正在使用 unix_timestamp 函数读取带有时间戳列的数据帧,如下所示:
val columnName = "TIMESTAMPCOL"
val sequence = Seq(2016-01-20 12:05:06.999)
val dataframe = {
sequence.toDF(columnName)
}
val typeDataframe = dataframe.withColumn(columnName, org.apache.spark.sql.functions.unix_timestamp($"TIMESTAMPCOL"))
typeDataframe.show
这会产生一个输出:
+------------+
|TIMESTAMPCOL|
+------------+
| 1453320306|
+------------+
我怎样才能阅读它,以免丢失 ms,即 .999 部分?我尝试使用unix_timestamp(col: Col, s: String),其中 s 是 SimpleDateFormat,例如“yyyy-MM-dd hh:mm:ss”,但没有任何运气。
【问题讨论】:
-
date_format在内部使用 java simpledateformat,因此您也将以毫秒为单位获得完整的时间。可能重复of
标签: scala apache-spark timestamp unix-timestamp