Skip to content

to_unix_timestamp(col, format=None)

Описание

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

Параметры

  • col: Column - столбец со строкой для преобразования
  • format: String - формат даты и времени (опционально)

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

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

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

from pyspark.sql.functions import to_unix_timestamp
from pyspark.sql import SparkSession

# Создаем SparkSession
spark = SparkSession.builder.appName("to_unix_timestamp_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"])

# Преобразуем строки в количество секунд
result = df.select(
    "timestamp_str",
    to_unix_timestamp("timestamp_str").alias("seconds")
).show()

# Результат:
# +-------------------+-------+
# |timestamp_str      |seconds|
# +-------------------+-------+
# |2023-01-01 12:00:00|1672574400|
# |2023-02-01 15:30:00|1675258200|
# |2023-03-01 18:45:00|1677689100|
# +-------------------+-------+

Примечания

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