timestamp_millis(milliseconds)
Описание
Функция timestamp_millis()
преобразует количество миллисекунд с начала эпохи Unix (1970-01-01 00:00:00 UTC) во временную метку.
Параметры
milliseconds
: Column - количество миллисекунд с начала эпохи Unix
Возвращаемое значение
Column - временная метка
Пример использования
from pyspark.sql.functions import timestamp_millis, current_timestamp, unix_timestamp, lit
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("timestamp_millis_example").getOrCreate()
# Создаем DataFrame с миллисекундами
data = [
(1710921600000,), # 2024-03-20 00:00:00
(1710921600123,), # 2024-03-20 00:00:00.123
(1710921600999,) # 2024-03-20 00:00:00.999
]
df = spark.createDataFrame(data, ["millis"])
# Преобразуем миллисекунды во временные метки
df = df.withColumn("timestamp", timestamp_millis("millis"))
df.show(truncate=False)
# Результат:
# +------------+-----------------------+
# |millis |timestamp |
# +------------+-----------------------+
# |1710921600000|2024-03-20 00:00:00 |
# |1710921600123|2024-03-20 00:00:00.123|
# |1710921600999|2024-03-20 00:00:00.999|
# +------------+-----------------------+
Примечания
- Принимает количество миллисекунд с начала эпохи Unix
- Возвращает NULL, если входное значение NULL
- Поддерживает точность до миллисекунд
- Для преобразования в микросекунды используйте
timestamp_micros()
- Для преобразования в секунды используйте
timestamp_seconds()
- Полезно для работы с временными метками в миллисекундах