Как изменить формат даты (с гггг-ММ-ДД на гггг-ММ)

#python #apache-spark #pyspark

#python #apache-spark #pyspark

Вопрос:

Я пытаюсь изменить формат даты с yyyy-MM-dd на yyyy-MM .

В конечном счете я хочу иметь возможность суммировать и группировать по месяцам. Пока единственное рабочее решение, которое я нашел, — это добавление concat(year(join_data["firstVisit"]), lit("-"), month(join_data["firstVisit"])).alias('firstVisitMonth') в мой оператор select, но затем он возвращает столбец в виде строки, и я не могу его правильно отсортировать.

Комментарии:

1. использование : date_trunc("month", join_data["firstVisit"]).cast("date") возвращает дату, усеченную до месяца.

Ответ №1:

Попробуйте date_format :

 date_format(join_data["firstVisit"], 'yyyy-MM')
 

Комментарии:

1. Я говорю слишком быстро. это также возвращается в виде строки

2. @SimonBreton вы можете попробовать to_date(trunc(join_data["firstVisit"], 'month'))