我有一个包含1亿行的数据。我需要将它分成每个1000万的表。如何在蜂巢中完成。
有效的sql查询是:
select * from Customers where rownum>0 and rownum<=1000000
select * from Customers where rownum>1000000 and rownum<=2000000
依旧......
由于
答案 0 :(得分:2)
如果您使用的是最新版本,则Hive的ROW_NUMBER
为analytics function。
否则,您可以执行以下操作:
from (select Customers.*, rand() as r from Customers) t
insert overwrite table Customers_sample1 select * where r < 0.1
insert overwrite table Customers_sample2 select * where r >=0.1 and r < 0.2
insert overwrite table Customers_sample3 select * where r >=0.2 and r < 0.3
...