输入:我有一个date
列,我想将该列强制转换为timestamp
或date
数据类型。
示例:2020-09-07 05:12:25.247000
(字符串数据类型(==>2020-09-07 05:12:25.247000
(日期或时间戳数据类型(
有人能提出解决方案吗
对于时间戳,请使用以下查询,将实际值替换为列名:
select date_parse('2020-09-07 05:12:25.247000', '%Y-%m-%d %H:%i:%s.%f') as time;
以上查询将给您
time
1 2020-09-07 05:12:25.247
如果您想要日期,则将上面的时间戳转换为日期:
select cast(date_parse('2020-09-07 05:12:25.247000', '%Y-%m-%d %H:%i:%s.%f') as date) as day
会给你
day
1 2020-09-07
使用typeof运算符验证类型:
select typeof(date_parse('2020-09-07 05:12:25.247000', '%Y-%m-%d %H:%i:%s.%f')). --> timestamp
select typeof(cast(date_parse('2020-09-07 05:12:25.247000', '%Y-%m-%d %H:%i:%s.%f') as date)). ->> date