基于spark/java的UnixTime

基于spark/java的UnixTime,java,apache-spark,Java,Apache Spark,我有以下数据帧: +------------------------+ | Tracking_Time | +------------------------+ |2020-02-18 14:50:07 | |2020-02-17 17:15:45 | +------------------------+ 我使用以下代码: df.withColumn("current_date", expr("reflect('java.lang

我有以下数据帧:

+------------------------+
| Tracking_Time          |
+------------------------+
|2020-02-18 14:50:07     |
|2020-02-17 17:15:45     |
+------------------------+
我使用以下代码:

df.withColumn("current_date", expr("reflect('java.lang.System', 'currentTimeMillis')"))
  .withColumn("Tracking_Time_ms", unix_timestamp(col("Tracking_Time")));
我得到以下输出

+------------------------+------------------------+------------------------+
| Tracking_Time          |current_date            |Tracking_Time_ms        |
+------------------------+------------------------+------------------------+
|2020-02-18 14:50:07     |1598108268389           |1582037407              |              
|2020-02-17 17:15:45     |1598108270182           |1581959745              |
+------------------------+------------------------+------------------------+

如何将
跟踪时间\u ms
的格式转换为
当前日期的格式?

unix时间戳的运行总时间为秒。此计数从1970年1月1日UTC的Unix纪元开始

因此,您在“跟踪时间”下看到的值实际上是以秒为单位的

要将其转换为ms(与当前_日期相同),需要将其乘以1000