如何在创建配置单元表的过程中格式化日期?
我目前正在将一些数据转储到工作中的发现环境中,并将日期存储为字符串,因为如果将它们格式化为日期或时间戳,则值为空。
原始数据如下:
12/07/2016 05:07:28 PM
我的理解是hive接受这种格式的日期
yyyy-mm-dd hh:mm:ss
我可以使用select语句格式化这些内容:
select id, receipt_dt, from_unixtime(unix_timestamp(receipt_dt ,'MM/dd/yyyy'), 'yyyy-MM-dd') as app_dt from MySchema.MyTable where app_num='123456'
我怎样才能在陈述中加上
from_unixtime(unix_timestamp(receipt_dt ,'MM/dd/yyyy'), 'yyyy-MM-dd')
如何将其添加到下面的泛型create external语句中,以便不再将日期存储为字符串,或使用alter table语句更改格式?
CREATE EXTERNAL TABLE IF NOT EXISTS MySchema.My_New_Table
( Field1 Format,
Field2 Format,
Field 3 Format,
)
.......
1条答案
按热度按时间gojuced71#
使用
MyTable
作为包含原始数据的暂存表,并创建最终/目标表my_new_table
通过变换,即,date
格式…这将是一种edw的过程。。。例子:
注意:这不是测试语句。你可能需要尝试,编辑,尝试…但你有这个想法。。。
然后插入delta应该是类似的过程。。。