英文:
Data processing on spark using java
问题
我有一个 DataSet。
+-------------------+
| 日期 |
+-------------------+
|1970-01-01 06:00:00|
+-------------------+
我想要只提取小时和分钟。列 "日期" 是时间戳类型。
我尝试了以下代码:
String format = "HH:mm";
df.withColumn("时:分",unix_timestamp(col("日期"),format)).show(100);
但对我来说没有起作用。
谢谢。
英文:
I have a DataSet.
+-------------------+
| Date |
+-------------------+
|1970-01-01 06:00:00|
+-------------------+
I want to take only the hour and the minute.The column Date is on timestamp.
I tried the following code :
String format = "HH:mm";
df.withColumn("hour:minute",unix_timestamp(col("Date"),format)).show(100);
But doesn't work for me .
Thank you .
答案1
得分: 1
unix_timestamp
函数将时间戳转换为 epoch/unix 时间。
- 使用
date_format
、from_unixtime(unix_timestamp())
函数之一来提取hour:minute
。
示例:
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_timestamp
converts timestamp to epoch/unix time.
- Use either
date_format
,from_unixtime(unix_timestamp())
functions to extracthour:minute
.
Example:
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|
//+-------------------+-----------+
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论