Альтернатива выбора DATE_FORMAT (дата, формат) в Apache Spark - PullRequest
0 голосов
/ 06 мая 2019

Я использую Apache-Spark SQL и Java для чтения из файла паркета.Файл содержит столбец даты (M/d/yyyy), и я хочу изменить его на другой формат (yyyy-dd-MM).Нечто подобное Select DATE_FORMAT(date, format), которое мы можем сделать в mysql.
Есть ли подобный метод в Apache-Spark?

1 Ответ

1 голос
/ 06 мая 2019

Что вы можете сделать, это проанализировать строку, используя to_timestamp с вашей текущей схемой, и отформатировать ее, используя желаемую комбинацию date_format:

val df = Seq("1/1/2015", "02/10/2014", "4/30/2010", "03/7/2015").toDF("d")
df.select('d, date_format(to_timestamp('d, "MM/dd/yyyy"), "yyyy-dd-MM") as "new_d")
  .show
+----------+----------+
|         d|     new_d|
+----------+----------+
|  1/1/2015|2015-01-01|
|02/10/2014|2014-10-02|
| 4/30/2010|2010-30-04|
| 03/7/2015|2015-07-03|
+----------+----------+

Обратите внимание, что синтаксический анализ довольно надежен и поддерживает однозначные дни и месяцы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...