Skip to content

unix_micros(col)

Описание

Функция unix_micros() преобразует timestamp в количество микросекунд, прошедших с 1970-01-01 00:00:00 UTC.

Параметры

  • col: Column - столбец с timestamp для преобразования

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

Long - количество микросекунд с 1970-01-01 00:00:00 UTC

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

from pyspark.sql.functions import unix_micros, to_timestamp
from pyspark.sql import SparkSession

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

# Создаем DataFrame
data = [
    ("2023-01-01 12:00:00"),
    ("2023-02-01 15:30:00"),
    ("2023-03-01 18:45:00")
]
df = spark.createDataFrame(data, ["timestamp_str"])

# Преобразуем строки в timestamp и затем в микросекунды
result = df.select(
    "timestamp_str",
    unix_micros(to_timestamp("timestamp_str")).alias("micros")
).show()

# Результат:
# +-------------------+-------------------+
# |timestamp_str      |micros             |
# +-------------------+-------------------+
# |2023-01-01 12:00:00|1672574400000000   |
# |2023-02-01 15:30:00|1675258200000000   |
# |2023-03-01 18:45:00|1677689100000000   |
# +-------------------+-------------------+

Примечания

  • Для преобразования timestamp в количество секунд используйте unix_timestamp()
  • Для преобразования timestamp в количество миллисекунд используйте unix_millis()
  • Для преобразования timestamp в количество дней используйте unix_date()
  • Для преобразования микросекунд обратно в timestamp используйте timestamp_micros()