to_timestamp(col, format=None)
Описание
Функция to_timestamp() преобразует строку во временную метку, используя указанный формат.
Параметры
col: Column - столбец со строками, содержащими даты и времяformat: String (опционально) - формат временной метки (по умолчанию 'yyyy-MM-dd HH:mm:ss')
Возвращаемое значение
Timestamp - преобразованная временная метка
Пример использования
from pyspark.sql.functions import to_timestamp
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("to_timestamp_example").getOrCreate()
# Создаем DataFrame со строками временных меток
data = [
    ("2023-01-15 12:30:45",),
    ("15/01/2023 12:30:45",),
    ("2023.01.15 12:30:45",)
]
df = spark.createDataFrame(data, ["timestamp_str"])
# Преобразуем строки во временные метки с разными форматами
result = df.select(
    "timestamp_str",
    to_timestamp("timestamp_str").alias("default_format"),
    to_timestamp("timestamp_str", "dd/MM/yyyy HH:mm:ss").alias("custom_format1"),
    to_timestamp("timestamp_str", "yyyy.MM.dd HH:mm:ss").alias("custom_format2")
).show(truncate=False)
# Результат:
# +-------------------+-------------------+-------------------+-------------------+
# |timestamp_str      |default_format     |custom_format1     |custom_format2     |
# +-------------------+-------------------+-------------------+-------------------+
# |2023-01-15 12:30:45|2023-01-15 12:30:45|2023-01-15 12:30:45|2023-01-15 12:30:45|
# |15/01/2023 12:30:45|null              |2023-01-15 12:30:45|null              |
# |2023.01.15 12:30:45|null              |null              |2023-01-15 12:30:45|
# +-------------------+-------------------+-------------------+-------------------+
 Примечания
- NULL значения возвращают NULL
 - Если формат не указан, используется формат по умолчанию 'yyyy-MM-dd HH:mm:ss'
 - Если строка не соответствует указанному формату, возвращается NULL
 - Для работы с временными метками также используйте:
 to_date()для преобразования в датуdate_format()для форматирования временной меткиyear()для извлечения годаmonth()для извлечения месяцаday()для извлечения дняhour()для извлечения часаminute()для извлечения минутsecond()для извлечения секунд