【发布时间】:2019-06-21 18:49:34
【问题描述】:
pyspark.sql.functions.date_format - 为一年的最后一天返回不正确的年份
Pyspark 版本:2.3.0.cloudera3 版本 Python版本:Python 2.7.5
当我尝试使用 pyspark 中的 date_format 函数重新格式化一年中的最后一个日期时,当与“YYYY”而不是“yyyy”一起使用时,它会返回下一年。
>>> from pyspark.sql.functions import *
>>> dftest = spark.createDataFrame([('2017-12-31',)], ['dt'])
>>> dftest.select(date_format('dt', 'MM/dd/yyy').alias('date')).collect()
[Row(date=u'12/31/2017')]
>>> dftest.select(date_format('dt', 'MM/dd/yyyy').alias('date')).collect()
[Row(date=u'12/31/2017')]
>>> dftest.select(date_format('dt', 'MM/dd/YYY').alias('date')).collect()
[Row(date=u'12/31/2018')]
>>> dftest.select(date_format('dt', 'MM/dd/YYYY').alias('date')).collect()
[Row(date=u'12/31/2018')]
“YYYY”(大写)与“yyyy”(小写)有何不同?
【问题讨论】:
标签: python pyspark date-format