last_day(date)
Описание
Функция last_day()
возвращает последний день месяца для указанной даты или временной метки.
Параметры
date
: Column - столбец с датами или временными метками
Возвращаемое значение
Date - дата последнего дня месяца
Пример использования
from pyspark.sql.functions import last_day
from pyspark.sql import SparkSession
from datetime import datetime
# Создаем SparkSession
spark = SparkSession.builder.appName("last_day_example").getOrCreate()
# Создаем DataFrame с датами
data = [
(datetime(2023, 1, 15),), # январь
(datetime(2023, 2, 10),), # февраль
(datetime(2023, 12, 1),) # декабрь
]
df = spark.createDataFrame(data, ["date"])
# Получаем последний день месяца для каждой даты
result = df.select(
"date",
last_day("date").alias("last_day_of_month")
).show(truncate=False)
# Результат:
# +-------------------+-----------------+
# |date |last_day_of_month|
# +-------------------+-----------------+
# |2023-01-15 00:00:00|2023-01-31 |
# |2023-02-10 00:00:00|2023-02-28 |
# |2023-12-01 00:00:00|2023-12-31 |
# +-------------------+-----------------+
Примечания
- NULL значения возвращают NULL
- Функция учитывает количество дней в месяце, включая високосные годы
- Для работы с датами также используйте:
year()
для извлечения годаmonth()
для извлечения месяцаday()
для извлечения дняhour()
для извлечения часаminute()
для извлечения минутsecond()
для извлечения секундquarter()
для извлечения кварталаdayofweek()
для извлечения дня неделиdayofyear()
для извлечения дня года