Skip to content

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()
  • Полезно для работы с высокоточными временными метками