Transpose or Pivot table or convert column to row
create table twit_seq STORED AS ORC tblproperties ("orc.compress"="NONE") as
select t1.consumer_id,t1.text,t1.rk
from
(SELECT consumer_id,text,postcreationtime1,rank() OVER (partition by consumer_id ORDER BY postcreationtime1 desc ) as rk,
row_number() over() as cnt
FROM dunami_v1)t1 where t1.rk < 6;
create table customer_tweet_info_dnami STORED AS ORC tblproperties ("orc.compress"="NONE") as
SELECT consumer_id ,
max(CASE WHEN rk = 1 THEN text else NULL END) AS Tweet_1,
max(CASE WHEN rk = 2 THEN text else NULL END) AS Tweet_2,
max(CASE WHEN rk = 3 THEN text else NULL END) AS Tweet_3,
max(CASE WHEN rk = 4 THEN text else NULL END) AS Tweet_4,
max(CASE WHEN rk = 5 THEN text else NULL END) AS Tweet_5
FROM twit_seq group by consumer_id;
create table twit_seq STORED AS ORC tblproperties ("orc.compress"="NONE") as
select t1.consumer_id,t1.text,t1.rk
from
(SELECT consumer_id,text,postcreationtime1,rank() OVER (partition by consumer_id ORDER BY postcreationtime1 desc ) as rk,
row_number() over() as cnt
FROM dunami_v1)t1 where t1.rk < 6;
create table customer_tweet_info_dnami STORED AS ORC tblproperties ("orc.compress"="NONE") as
SELECT consumer_id ,
max(CASE WHEN rk = 1 THEN text else NULL END) AS Tweet_1,
max(CASE WHEN rk = 2 THEN text else NULL END) AS Tweet_2,
max(CASE WHEN rk = 3 THEN text else NULL END) AS Tweet_3,
max(CASE WHEN rk = 4 THEN text else NULL END) AS Tweet_4,
max(CASE WHEN rk = 5 THEN text else NULL END) AS Tweet_5
FROM twit_seq group by consumer_id;
No comments:
Post a Comment