1. 程式人生 > >Hive中三張表資料合併成一行,並插入另一張表

Hive中三張表資料合併成一行,並插入另一張表

知識點:時間戳轉化,當前時間,左連線,查詢的欄位相同可以直接插入另一張表 

insert into lqioc_ioc_dw.kkjc
select a.*,b.CLL,e.JZT from 
(select FROM_UNIXTIME(UNIX_TIMESTAMP(),'yyyy') as YEAR_ID,
'鹿泉' as AREA_NAME,
'130185000000' as AREA_NO,
'北國奧特萊斯' as ZB,
'kkjc_1' as ZBBM) a
left join 
(select '130185000000' as AREA_NO,count(1) as CLL from lqioc_ioc_ods.CLTXJLLQ WHERE 
UPDATETIME>=FROM_UNIXTIME(UNIX_TIMESTAMP(),'yyyy-mm-dd') 
and UPDATETIME<FROM_UNIXTIME(UNIX_TIMESTAMP()+1,'yyyy-mm-dd') 
and COMMUNITYNAME='北國奧特萊斯') b 
on a.AREA_NO=b.AREA_NO
left join 
(select '130185000000' as AREA_NO,(c.count_1-d.count_2) as JZT from (select count(1) as count_1 from lqioc_ioc_ods.CLTXJLLQ WHERE 
UPDATETIME>=FROM_UNIXTIME(UNIX_TIMESTAMP(),'yyyy-mm-dd') 
and UPDATETIME<FROM_UNIXTIME(UNIX_TIMESTAMP()+1,'yyyy-mm-dd') 
and COMMUNITYNAME='北國奧特萊斯') c,
(select count(1) as count_2 from lqioc_ioc_ods.CLTXJLLQ WHERE 
UPDATETIME > FROM_UNIXTIME(UNIX_TIMESTAMP()-1,'yyyy-mm-dd')
and UPDATETIME<=FROM_UNIXTIME(UNIX_TIMESTAMP()-1,'yyyy-MM-dd HH:mm:ss')
and COMMUNITYNAME='北國奧特萊斯') d) e
on b.AREA_NO=e.AREA_NO;