Существует ли функция Spark SQL для добавления часов, минут и секунд в существующий столбец отметки времени.
Например:
+----------+-------------------+-------------------+
| dt| txn_dt| txn_dt_tm|
+----------+-------------------+-------------------+
|2008-08-15|2008-08-15 00:00:00|2008-08-15 05:00:00|
+----------+-------------------+-------------------+
Мне нужно добавить 23 часа 59 минут и 59 секунд в столбец txn_dt
.
Выход:
+----------+-------------------+-------------------+
| dt| txn_dt| txn_dt_tm|
+----------+-------------------+-------------------+
|2008-08-15|2008-08-15 23:59:59|2008-08-15 05:00:00|
+----------+-------------------+-------------------+
Обновление:
Мне удалось получить его с помощью INTERVAL, но я не уверен, что это эффективный способ сделать это.
df.select((F.col("txn_dt") + F.expr("INTERVAL 23 HOURS") + F.expr("INTERVAL 59 MINUTES") + F.expr("INTERVAL 59 SECONDS")).alias("txn_dt_tm"))