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()