基于java的spark数据处理

基于java的spark数据处理,java,mysql,apache-spark,Java,Mysql,Apache Spark,我有一个数据集 +-------------------+ | Date | +-------------------+ |1970-01-01 06:00:00| +-------------------+ 我只想用小时和分钟。列日期在时间戳上。 我尝试了以下代码: String format = "HH:mm"; df.withColumn("hour:minute",unix_timestamp(col("Date"),format)

我有一个数据集

+-------------------+
|     Date          |
+-------------------+
|1970-01-01 06:00:00|
+-------------------+
我只想用小时和分钟。列日期在时间戳上。 我尝试了以下代码:

       String format = "HH:mm";
       df.withColumn("hour:minute",unix_timestamp(col("Date"),format)).show(100);
但对我不起作用


谢谢。

unix\u时间戳
将时间戳转换为历元/unix时间

  • 使用
    date\u格式
    从unixtime(unix\u timestamp())
    函数提取
    小时:分钟
例如:

df.withColumn("hour:minute",date_format(col("Date"),"HH:mm")).show()
df.withColumn("hour:minute",from_unixtime(unix_timestamp(col("Date"),"yyyy-MM-dd HH:mm:ss"),"HH:mm")).show()

//+-------------------+-----------+
//|               Date|hour:minute|
//+-------------------+-----------+
//|1970-01-01 06:00:00|      06:00|
//+-------------------+-----------+
我认为您希望使用而不是
unix\u timestamp()