Skip to content

Commit ddf9674

Browse files
committed
✅ add a case
1 parent c4f0c5b commit ddf9674

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed

cases/站点访问量周榜top10.sql

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
/*
2+
需求:
3+
要求统计一周内每日访问量pv最高的站点
4+
数据如下:
5+
day,website,pv
6+
2019-10-01,www.blogtech.top,13
7+
2019-10-01,www.sqlfun.cn,10
8+
2019-10-01,www.sqlpower.top,9
9+
2019-10-01,www.sqlpower.tech,15
10+
2019-10-02,www.blogtech.top,13
11+
2019-10-02,www.sqlfun.cn,9
12+
2019-10-02,www.sqlpower.top,9
13+
2019-10-03,www.sqlpower.tech,15
14+
2019-10-04,www.blogtech.top,13
15+
2019-10-04,www.sqlfun.cn,9
16+
2019-10-05,www.sqlpower.top,9
17+
2019-10-06,www.sqlpower.tech,15
18+
2019-10-07,www.blogtech.top,13
19+
2019-10-07,www.sqlfun.cn,10
20+
*/
21+
22+
-- 1. 建表
23+
set hive.exec.mode.local.auto=true; --开启Hive的本地模式
24+
25+
drop table if exists user_website_pv;
26+
create temporary table user_website_pv(
27+
day string,
28+
website string,
29+
pv int
30+
) row format delimited fields terminated by ','
31+
stored as textfile
32+
tblproperties(
33+
"skip.header.line.count"="1" --跳过文件首的1行
34+
--"skip.footer.line.count"="n" --跳过文件尾的n行
35+
);
36+
37+
load data local inpath '/tmp/sgr/user_website_pv.csv' into table user_website_pv;
38+
39+
-- 2. 处理
40+
41+
select a.day,a.website,a.sum_pv from (
42+
select day,website,sum(pv) as sum_pv,
43+
row_number() over(partition by day order by sum(pv) desc) rank
44+
from user_website_pv where day
45+
BETWEEN date_sub('2019-10-07', 7) and '2019-10-07'
46+
group by day,website
47+
) a where a.rank=1;
48+
49+
50+
/*
51+
结果:
52+
2019-10-01 www.sqlpower.tech 15
53+
2019-10-02 www.blogtech.top 13
54+
2019-10-03 www.sqlpower.tech 15
55+
2019-10-04 www.blogtech.top 13
56+
2019-10-05 www.sqlpower.top 9
57+
2019-10-06 www.sqlpower.tech 15
58+
2019-10-07 www.blogtech.top 13
59+
*/
60+
61+
62+
63+

0 commit comments

Comments
 (0)