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