spark 中的星期几日期格式字符串 java
day of week date format string java inside spark
val df = Seq("2019-07-30", "2019-08-01").toDF
val dd = df.withColumn("value", to_date('value))
dd.show(false)
根据文档 https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
如果我需要查看月份中的星期几,F
是格式字符串。并且
dd.withColumn("dow", date_format('value, "EEEE")).withColumn("dow_number", date_format('value, "F")).show(false)
+----------+--------+----------+
|value |dow |dow_number|
+----------+--------+----------+
|2019-07-30|Tuesday |5 |
|2019-08-01|Thursday|1 |
+----------+--------+----------+
仅给出月份中的星期几,而不是星期几。
哪种格式字符串以数字/整数形式给出星期几?
显然,我可以使用:http://www.java2s.com/Tutorials/Java/Data_Type_How_to/Date/Get_day_of_week_int_value_and_String_value.htm
但是不想使用 UDF/想使用优化的催化剂 date_format
。那么哪个日期格式字符串给我想要的结果呢?
如评论中所述,您正在寻找 "u"
格式。
此外,从 spark 2.3.0 开始,您可能希望使用 dayofweek
方法,该方法速度更快 dayofweek documentation
your code is correct instead of "F" just use "u" like below
dd.withColumn("dow", date_format('value, "EEEE")).withColumn("dow_number", date_format('value, "F")).show(false)
val df = Seq("2019-07-30", "2019-08-01").toDF
val dd = df.withColumn("value", to_date('value))
dd.show(false)
根据文档 https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
如果我需要查看月份中的星期几,F
是格式字符串。并且
dd.withColumn("dow", date_format('value, "EEEE")).withColumn("dow_number", date_format('value, "F")).show(false)
+----------+--------+----------+
|value |dow |dow_number|
+----------+--------+----------+
|2019-07-30|Tuesday |5 |
|2019-08-01|Thursday|1 |
+----------+--------+----------+
仅给出月份中的星期几,而不是星期几。
哪种格式字符串以数字/整数形式给出星期几?
显然,我可以使用:http://www.java2s.com/Tutorials/Java/Data_Type_How_to/Date/Get_day_of_week_int_value_and_String_value.htm
但是不想使用 UDF/想使用优化的催化剂 date_format
。那么哪个日期格式字符串给我想要的结果呢?
如评论中所述,您正在寻找 "u"
格式。
此外,从 spark 2.3.0 开始,您可能希望使用 dayofweek
方法,该方法速度更快 dayofweek documentation
your code is correct instead of "F" just use "u" like below
dd.withColumn("dow", date_format('value, "EEEE")).withColumn("dow_number", date_format('value, "F")).show(false)