我已经在hadoop上安装了hive2.1.1,在那里我创建了一个表,表名为data,列为dis string,dt timestamp。我想将日期和时间存储在不同的列中,所以我创建了另一个名为data1的表和列(dis string、dat date、time string)。如何将数据从表数据复制到数据1。我试图通过执行“insert into table data1 select dis,convert(date,dt),convert(time,dt)from data;”来实现它。
9vw9lbht1#
使用下面的查询
insert into table data1 select dis,TO_DATE(dt),concat(HOUR(DT),':',MINUTE(dt)) from data;
s1ag04yj2#
select dis,to_date(dt),split(dt,' ')[1]
或
select dis,to_date(dt),substr(dt,12,8)
演示
with t as (select timestamp '2017-04-06 04:20:33' as dt) select to_date(dt),split(dt,' ')[1] from t; OK _c0 _c1 2017-04-06 04:20:33
with t as (select timestamp '2017-04-06 04:20:33' as dt) select to_date(dt),substr(dt,12,8) from t; OK _c0 _c1 2017-04-06 04:20:33
2条答案
按热度按时间9vw9lbht1#
使用下面的查询
s1ag04yj2#
或
演示