Skip to content

hour(timestamp)

Описание

Функция hour() извлекает час из временной метки.

Параметры

  • timestamp: Column - столбец с временными метками

Возвращаемое значение

Integer - час из временной метки (от 0 до 23)

Пример использования

from pyspark.sql.functions import hour
from pyspark.sql import SparkSession
from datetime import datetime

# Создаем SparkSession
spark = SparkSession.builder.appName("hour_example").getOrCreate()

# Создаем DataFrame с временными метками
data = [
    (datetime(2023, 1, 1, 0, 0, 0),),   # 00:00
    (datetime(2023, 1, 1, 12, 0, 0),),  # 12:00
    (datetime(2023, 1, 1, 23, 0, 0),)   # 23:00
]
df = spark.createDataFrame(data, ["timestamp"])

# Извлекаем час из временных меток
result = df.select(
    "timestamp",
    hour("timestamp").alias("hour")
).show(truncate=False)

# Результат:
# +-------------------+----+
# |timestamp          |hour|
# +-------------------+----+
# |2023-01-01 00:00:00|0   |
# |2023-01-01 12:00:00|12  |
# |2023-01-01 23:00:00|23  |
# +-------------------+----+

Примечания

  • NULL значения возвращают NULL
  • Часы нумеруются от 0 до 23 (24-часовой формат)
  • Для работы с датами также используйте:
  • year() для извлечения года
  • month() для извлечения месяца
  • day() для извлечения дня
  • minute() для извлечения минут
  • second() для извлечения секунд
  • quarter() для извлечения квартала
  • dayofweek() для извлечения дня недели
  • dayofyear() для извлечения дня года