Amazon Athena 如何将特殊格式字符串转换为日期类型
Amazon Athena 特殊日期字符串转换方案
你可以直接通过date_parse函数配合对应格式占位符完成转换,格式占位符与你的日期字符串的对应规则如下:
- 两位天数字段
26对应占位符%d - 英文缩写月份字段
APR对应占位符%b - 四位年份字段
2017对应占位符%Y - 后续时分秒字段
06:01:44对应占位符%H:%i:%s(适配24小时制时间)
假设存储日期字符串的字段名为str_date,转换为标准timestamp类型的SQL写法如下:
SELECT date_parse(str_date, '%d%b%Y:%H:%i:%s') AS standard_timestamp FROM your_table_name
如果需要转换为指定格式的日期字符串,可嵌套date_format函数实现:
-- 示例转换为 yyyy-MM-dd HH:mm:ss 格式的字符串 SELECT date_format(date_parse(str_date, '%d%b%Y:%H:%i:%s'), '%Y-%m-%d %H:%i:%s') AS standard_date_str FROM your_table_name
如果仅需要日期部分,可再嵌套date函数:
SELECT date(date_parse(str_date, '%d%b%Y:%H:%i:%s')) AS standard_date FROM your_table_name
你给出的示例字符串26APR2017:06:01:44经上述逻辑转换后,对应输出为2017-04-26 06:01:44.000(timestamp类型)或2017-04-26(日期类型)。
内容的提问来源于stack exchange,提问作者Akshay
相关产品推荐
相关产品推荐

