在 pyspark SQL 中将字符串日期转换为日期格式
Posted
技术标签:
【中文标题】在 pyspark SQL 中将字符串日期转换为日期格式【英文标题】:Convert string date to date format in pyspark SQL 【发布时间】:2021-11-16 15:51:30 【问题描述】:我在表格中有一个日期列,它是字符串格式 我需要把这个字符串日期转换成日期类型格式
这就是我的日期列的样子
+----------+
| date|
+----------+
|2018_07 |
+----------+
我需要将此日期转换为日期格式而不是字符串格式的所需格式
+----------+
| Date|
+----------+
|2018-07-01|
+----------+
我正在尝试使用它,但它在日期列下给了我空值
%sql
SELECT Col1,Col2,Col3,Col4,
TO_DATE(
CAST(
UNIX_TIMESTAMP(date, 'yyyy-MM-01') AS TIMESTAMP
)
) as Date
,sales
FROM db.table
感谢任何形式的帮助
【问题讨论】:
【参考方案1】:我简化了你的代码,现在它可以正常工作了(刚刚测试过):-)
%sql
SELECT
Col1,
Col2,
Col3,
Col4,
TO_DATE(TRIM(date), 'yyyy_MM') AS DATE,
sales
FROM
db.table
【讨论】:
我尝试使用相同的,但日期列显示空行 请复制代码并进行测试,因为我刚刚对您的示例数据进行了测试并且没问题。我现在也添加了修剪,因为日期周围可能有一些空格 完美,谢谢:)以上是关于在 pyspark SQL 中将字符串日期转换为日期格式的主要内容,如果未能解决你的问题,请参考以下文章