from_utc_timestamp(timestamp, timezone)
Описание
Функция from_utc_timestamp() преобразует временную метку из UTC в указанный часовой пояс.
Параметры
timestamp: Column - временная метка в UTCtimezone: Column - целевой часовой пояс (например, 'America/Los_Angeles', 'Europe/Moscow')
Возвращаемое значение
Column - временная метка в указанном часовом поясе
Пример использования
from pyspark.sql.functions import from_utc_timestamp, current_timestamp, lit
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("from_utc_timestamp_example").getOrCreate()
# Создаем DataFrame с текущим временем
df = spark.range(1)
df = df.withColumn("utc_time", current_timestamp())
# Преобразуем в разные часовые пояса
df = df.withColumn("moscow_time", from_utc_timestamp("utc_time", lit("Europe/Moscow")))
df = df.withColumn("new_york_time", from_utc_timestamp("utc_time", lit("America/New_York")))
df = df.withColumn("tokyo_time", from_utc_timestamp("utc_time", lit("Asia/Tokyo")))
df.show(truncate=False)
# Результат:
# +---+-----------------------+-----------------------+-----------------------+-----------------------+
# |id |utc_time              |moscow_time            |new_york_time          |tokyo_time             |
# +---+-----------------------+-----------------------+-----------------------+-----------------------+
# |0  |2024-03-20 10:00:00   |2024-03-20 13:00:00    |2024-03-20 06:00:00    |2024-03-20 19:00:00    |
# +---+-----------------------+-----------------------+-----------------------+-----------------------+
 Примечания
- Принимает временную метку в UTC
 - Поддерживает все стандартные часовые пояса
 - Возвращает NULL, если любой из параметров NULL
 - Для обратного преобразования используйте 
to_utc_timestamp() - Учитывает переход на летнее время
 - Полезно для работы с данными из разных регионов