我需要在Spark SQL 中将字符串值转换为时间戳,同时保留毫秒部分。字符串值为:{'2018-05-15 14:12:44.185'
。我尝试type-cast
,但它截断了毫秒部分。
select from_unixtime(unix_timestamp('2018-05-15 14:12:44.185', 'yyyy-MM-dd HH:mm:ss.SSS'))
任何人都可以帮忙,以便将毫秒部分也保留在结果值中吗?
谢谢
答案 0 :(得分:0)
您可以使用function to_timestamp()
将字符串转换为时间戳,例如:
select to_timestamp('2018-05-15 14:12:44.185', 'yyyy-MM-dd HH:mm:ss.SSS')
答案 1 :(得分:0)
尝试以下代码
df.withColumn("eventTime1", unix_timestamp('2018-05-15 14:12:44.185', "yyyy-MM-dd HH:mm:ss.SSS").cast(TimestampType))