Spark Timestamp问题,相同的时间戳但不匹配

时间:2018-06-06 19:35:00

标签: scala apache-spark timestamp

我正在将数据从源码移动到我的存储桶中,需要编写用于数据验证的脚本。但对于Timestamp数据类型,我面临一些奇怪的问题:我有两行包含两个相同的时间戳[2017-06-08 17:50:02.422437],[2017-06-08 17:50:02.422],因为第二个由于不同的文件系统配置,Spark具有不同的格式,Spark认为它们不同。反正有没有解决这个问题?理想的方法是在进行数据帧比较时忽略此列。

1 个答案:

答案 0 :(得分:0)

您可以使用unix_timestamp并使用该数字进行比较。对于实际日期要求,您可以使用from_unixtime转换为所需的格式。不确定它是大量数据的有效方法......

 sqlContext.sql("Select unix_timestamp('2017-06-08 17:50:02.422'), unix_timestamp('2017-06-08 17:50:02.422437') ").show
+----------+----------+
|       _c0|       _c1|
+----------+----------+
|1496958602|1496958602|
+----------+----------+