Skip to content

unix_seconds(col)

Описание

Функция unix_seconds() преобразует 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_seconds, to_timestamp
from pyspark.sql import SparkSession

# Создаем SparkSession
spark = SparkSession.builder.appName("unix_seconds_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_seconds(to_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_millis()
  • Для преобразования timestamp в количество микросекунд используйте unix_micros()
  • Для преобразования timestamp в количество дней используйте unix_date()
  • Для преобразования секунд обратно в timestamp используйте timestamp_seconds()