在 Azure Databricks 中将字符串转换为日期时间字段
Convert String to Date Time Filed in Azure Data Bricks
我有以下代表应用程序日期时间的文本字符串。
2021-11-2207:28:47下午
我需要将其转换为日期时间以执行 DATE ADD 操作。
我尝试了很多方法都没有成功,它在 Azure Data Bricks 中给了我 null。
select '2021-11-22 07:28:47 PM' as DateTime_String,
to_date('2021-11-22 07:28:47 PM', 'yyyy-M-dd HH:mm:ss:SS a') as Attempt_1 ,
date_format(date ('2021-11-22 07:28:47 PM'), "yyyy-MM-dd HH:mm:ss:SS a") as Attempt_2,
to_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd HH:mm:ss.SSS a') as Attempt_3,
to_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd HH:mm:ss ') as Attempt_4
您可以使用以下方法来满足您的要求。
- 将您的 字符串 转换为 unix 时间戳(以秒为单位)
- 根据 unix 时间戳创建所需格式的日期时间列。
代码和输出如下:
select '2021-11-22 07:28:47 PM' as DateTime_String,unix_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd hh:mm:ss aa') as unixtimestamp_value, from_unixtime(unix_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd hh:mm:ss aa'),'yyyy-MM-dd HH:mm:ss') as desired_format
我有以下代表应用程序日期时间的文本字符串。
2021-11-2207:28:47下午
我需要将其转换为日期时间以执行 DATE ADD 操作。
我尝试了很多方法都没有成功,它在 Azure Data Bricks 中给了我 null。
select '2021-11-22 07:28:47 PM' as DateTime_String,
to_date('2021-11-22 07:28:47 PM', 'yyyy-M-dd HH:mm:ss:SS a') as Attempt_1 ,
date_format(date ('2021-11-22 07:28:47 PM'), "yyyy-MM-dd HH:mm:ss:SS a") as Attempt_2,
to_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd HH:mm:ss.SSS a') as Attempt_3,
to_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd HH:mm:ss ') as Attempt_4
您可以使用以下方法来满足您的要求。
- 将您的 字符串 转换为 unix 时间戳(以秒为单位)
- 根据 unix 时间戳创建所需格式的日期时间列。
代码和输出如下:
select '2021-11-22 07:28:47 PM' as DateTime_String,unix_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd hh:mm:ss aa') as unixtimestamp_value, from_unixtime(unix_timestamp('2021-11-22 07:28:47 PM', 'yyyy-MM-dd hh:mm:ss aa'),'yyyy-MM-dd HH:mm:ss') as desired_format