1·保存结果到HIVE表
方法1、已经建好结果表,使用INSERT OVERWRITE TABLE以覆盖方式写入结果表,要确保表字段一致
insert overwrite table query_result select * from behavior_20200712 limit 10;
HIVE也提供了追加方式INSERT TABLE,可以在原有数据后面加上新的查询结果。
hive> insert into table query_result
> select * from query_result;
方法2、如果需要新建一个表,用于存放查询结果,可以使用CREATE TABLE AS SELECT语法
hive> create table query_result
> as
> select user, login_time from user_login;
查看表位置等详细信息
show create table t_tag_dm_rk;
hive上连接mysql数据库 查看mysql中的数据库名称
sqoop list-databases --connect jdbc:mysql://rm-bp1b9qzla7uzm69hn.mysql.rds.aliyuncs.com/ --username root --password 'Jop)DzcYQdpTy4ivHJcMAnH7chgFNvjw'
查看当前运行的hive sql
yarn application -list
窗口函数
查询订单表中不同地区消费总金额前5人
SELECT
*
FROM
(
SELECT
pun.*,
rank() over ( PARTITION BY pun.province ORDER BY pun.num DESC ) AS ranking
FROM
(SELECT province, user_id, sum( pay_amount) as num from t_tj_order GROUP BY province, user_id) AS pun
) AS a
WHERE
a.ranking < 5 limit 10