8. SparkSQL综合作业
综合练习:学生课程分数
网盘下载sc.txt文件,分别创建RDD、DataFrame和临时表/视图;
分别用RDD操作、DataFrame操作和spark.sql执行SQL语句实现以下数据分析:
-
总共有多少学生?
-
总共开设了多少门课程?
-
每个学生选修了多少门课?
-
每门课程有多少个学生选?
- 每门课程>95分的学生人数
-
课程'Python'有多少个100分?
-
Tom选修了几门课?每门课多少分?
-
Tom的成绩按分数大小排序。
-
Tom选修了哪几门课?
-
Tom的平均分。
-
'OperatingSystem'不及格人数
-
'OperatingSystem'平均分
-
'OperatingSystem'90分以上人数
-
'OperatingSystem'前3名
-
每个分数按比例+20平时分。
-
求每门课的平均分
-
选修了7门课的有多少个学生?
-
每门课大于95分的学生数
- 每门课的选修人数、平均分、不及格人数、通过率
- 优秀、良好、通过和不合格各有多少人?
- 同时选修了DataStructure和 DataBase 的学生
- 选修了DataStructure 但没有选修 DataBase 的学生
- 选修课程数少于3门的同学
- 选修6门及以上课程数的同学
- 查询平均成绩大于等于60分的姓名和平均成绩
- 找出平均分最高的10位同学
RDD操作
1、总共有多少学生?
2、总共开设了多少门课程?
3、每个学生选修了多少门课?
4、每门课程有多少个学生选?
5、每门课程>95分的学生人数
6、课程'Python'有多少个100分?
7、Tom选修了几门课?每门课多少分?
8、Tom的成绩按分数大小排序。
9、Tom选修了哪几门课?
10、Tom的平均分。
11、'OperatingSystem'不及格人数
12、'OperatingSystem'平均分
13、'OperatingSystem'90分以上人数
14、'OperatingSystem'前3名
15、每个分数按比例+20平时分。
16、求每门课的平均分
17、选修了7门课的有多少个学生?
18、每门课大于95分的学生数
19、每门课的选修人数、平均分、不及格人数、通过率
20、优秀、良好、通过和不合格各有多少人?
21、同时选修了DataStructure和 DataBase 的学生
22、选修了DataStructure 但没有选修 DataBase 的学生
23、选修课程数少于3门的同学
24、选修6门及以上课程数的同学
25、查询平均成绩大于等于60分的姓名和平均成绩
26、找出平均分最高的10位同学
DataFrame操作
1、总共有多少学生?
2、总共开设了多少门课程?
3、每个学生选修了多少门课?
4、每门课程有多少个学生选?
5、每门课程>95分的学生人数
6、课程'Python'有多少个100分?
7、Tom选修了几门课?每门课多少分?
8、Tom的成绩按分数大小排序。
9、Tom选修了哪几门课?
10、Tom的平均分。
11、'OperatingSystem'不及格人数
12、'OperatingSystem'平均分
13、'OperatingSystem'90分以上人数
14、'OperatingSystem'前3名
15、每个分数按比例+20平时分。
16、求每门课的平均分
17、选修了7门课的有多少个学生?
18、每门课大于95分的学生数
19、每门课的选修人数、平均分、不及格人数、通过率
20、优秀、良好、通过和不合格各有多少人?
21、同时选修了DataStructure和 DataBase 的学生
22、选修了DataStructure 但没有选修 DataBase 的学生
23、选修课程数少于3门的同学
24、选修6门及以上课程数的同学
25、查询平均成绩大于等于60分的姓名和平均成绩
26、找出平均分最高的10位同学
spark.sql执行SQL语句操作
创造临时表
1、总共有多少学生?
2、总共开设了多少门课程?
3、每个学生选修了多少门课?
4、每门课程有多少个学生选?
5、每门课程>95分的学生人数
6、课程'Python'有多少个100分?
7、Tom选修了几门课?每门课多少分?
8、Tom的成绩按分数大小排序。
9、Tom选修了哪几门课?
10、Tom的平均分。
11、'OperatingSystem'不及格人数
12、'OperatingSystem'平均分
13、'OperatingSystem'90分以上人数
14、'OperatingSystem'前3名
15、每个分数按比例+20平时分。
16、求每门课的平均分
17、选修了7门课的有多少个学生?
18、每门课大于95分的学生数
19、每门课的选修人数、平均分、不及格人数、通过率
20、优秀、良好、通过和不合格各有多少人?
21、同时选修了DataStructure和 DataBase 的学生
22、选修了DataStructure 但没有选修 DataBase 的学生
23、选修课程数少于3门的同学
24、选修6门及以上课程数的同学
25、查询平均成绩大于等于60分的姓名和平均成绩
26、找出平均分最高的10位同学