В Spark 2.3.0 вы можете использовать date_trunc
, чтобы получить дату начала недели, а затем добавить количество дней, чтобы добраться до нужного дня недели.
spark.sql("select '2020-01-10' given, date_trunc('WEEK', '2020-01-10') week_start , date_add(date_trunc('WEEK', '2020-01-10'),5) saturday_date").show()
+----------+-------------------+-------------+
| given| week_start|saturday_date|
+----------+-------------------+-------------+
|2020-01-10|2020-01-06 00:00:00| 2020-01-11|
+----------+-------------------+-------------+