You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Databricks中PySpark实现字符串日期转YYYY-MM-DD:HH:MM:SS格式咨询

PySpark 转换字符串日期格式(20240107193154 → YYYY-MM-DD:HH:MM:SS)

直接用to_timestamp解析原字符串格式,再通过date_format输出目标格式即可,比unixtimestamp更直观可靠。

具体实现代码

# 导入PySpark函数
from pyspark.sql.functions import to_timestamp, date_format

# 示例DataFrame(替换成你的实际数据)
df = spark.createDataFrame([("20240107193154",)], ["original_date"])

# 执行格式转换
df = df.withColumn(
    "formatted_datetime",
    date_format(
        to_timestamp("original_date", "yyyyMMddHHmmss"),  # 解析原字符串为Timestamp类型
        "yyyy-MM-dd:HH:mm:ss"  # 指定目标输出格式
    )
)

# 查看转换结果
df.show(truncate=False)

结果说明

运行后会得到如下输出:

+---------------+-------------------+
|original_date  |formatted_datetime |
+---------------+-------------------+
|20240107193154 |2024-01-07:19:31:54|
+---------------+-------------------+

关于unixtimestamp失败的原因

如果之前使用unixtimestamp没得到预期结果,大概率是没指定正确的输入格式。unixtimestamp需要明确传入原字符串的格式参数,比如unixtimestamp("original_date", "yyyyMMddHHmmss"),但它返回的是时间戳数值,还需要再转成日期字符串,步骤比上面的方法繁琐,不如直接用to_timestamp + date_format组合高效。

内容的提问来源于stack exchange,提问作者Gourav Joshi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 03:33:17