next_day(date, day_of_week)
Описание
Функция next_day() возвращает дату следующего указанного дня недели после заданной даты.
Параметры
date: Column - столбец с датамиday_of_week: String - день недели (например, "Mon", "Monday", "MONDAY")
Возвращаемое значение
Date - дата следующего указанного дня недели
Пример использования
from pyspark.sql.functions import next_day
from pyspark.sql import SparkSession
from datetime import datetime
# Создаем SparkSession
spark = SparkSession.builder.appName("next_day_example").getOrCreate()
# Создаем DataFrame с датами
data = [
    (datetime(2023, 1, 15),),   # Воскресенье
    (datetime(2023, 1, 16),),   # Понедельник
    (datetime(2023, 1, 17),)    # Вторник
]
df = spark.createDataFrame(data, ["date"])
# Находим следующий понедельник после каждой даты
result = df.select(
    "date",
    next_day("date", "Mon").alias("next_monday")
).show(truncate=False)
# Результат:
# +-------------------+-----------+
# |date               |next_monday|
# +-------------------+-----------+
# |2023-01-15 00:00:00|2023-01-16 |
# |2023-01-16 00:00:00|2023-01-23 |
# |2023-01-17 00:00:00|2023-01-23 |
# +-------------------+-----------+
 Примечания
- NULL значения возвращают NULL
 - День недели можно указывать в любом регистре и в сокращенной или полной форме
 - Если текущий день совпадает с искомым, возвращается дата следующей недели
 - Для работы с датами также используйте:
 date_add()для добавления днейdate_sub()для вычитания днейdayofweek()для получения номера дня неделиdayofyear()для получения номера дня в годуweekofyear()для получения номера недели в году