如题,原来的时间戳是STRING类型,(%d-%b-%Y %H.%M.%S.%f %p) 03-DEC-15 12.00.00.000000 AM一般的类型转换我可以用withColumn里面用CAST(‘double')但这种想转换成DATETIME类型的,或者INT,要怎么处理呢
解决方案 »
- (交流)大家使用oepnstack创建vlan之后,出来的数据包带vlan标签么?
- gsdfgsdg
- openstack多节点部署 对底层硬件的要求??
- 现在有办法解决硬盘I/O的性能问题吗?
- cloudera manager 不能选择主机,请问这是为什么
- remote-viewer usb-filter /--spice-usbredir-auto-redirect-filter 相关问题
- FreeStor和AWS市场对虚拟数据中心部署方式有什么启示
- 为什么spark sql有些任务特别慢?基本同样的input和shuffle数据量,大多数任务不到10几分钟就结束了,但有几个任务要30分钟以上?
- sparkstreaming 消费kafka topic数据异常
- 弄了个游戏私服,但是IP有点晕
- 【求助】一个有关docker swarm集群的问题
- spark sql读取parquet二进制格式的列
res11: String = 2.0.2scala> val df = sc.parallelize(Seq("03-DEC-15 12.00.00.000000 AM")).toDF
df: org.apache.spark.sql.DataFrame = [value: string]scala> df.show(false)
+----------------------------+
|value |
+----------------------------+
|03-DEC-15 12.00.00.000000 AM|
+----------------------------+scala> val df2 = df.withColumn("dateType", unix_timestamp($"value", "dd-MMM-yy hh.mm.ss.SSSSSS a"))
df2: org.apache.spark.sql.DataFrame = [value: string, dateType: bigint]scala> df2.show(false)
+----------------------------+----------+
|value |dateType |
+----------------------------+----------+
|03-DEC-15 12.00.00.000000 AM|1449118800|
+----------------------------+----------+scala> df2.withColumn("newFormat", from_unixtime($"dateType")).show(false)
+----------------------------+----------+-------------------+
|value |dateType |newFormat |
+----------------------------+----------+-------------------+
|03-DEC-15 12.00.00.000000 AM|1449118800|2015-12-03 00:00:00|
+----------------------------+----------+-------------------+see the Java simpleDateFormatAnd Spark unix_timestamp UDF