首页
学习
活动
专区
圈层
工具
发布

大数据面试SQL042-所有考试科目的成绩都大于对应学科的平均成绩的学生

一、题目 有学生每科科目成绩,找出所有科目成绩都大于对应学科的平均成绩的学生 +------+------+--------+ | sid | cid | score | +------+----...90 | | 4 | 2 | 90 | | 4 | 3 | 72 | +------+------+--------+ 二、分析 题目要求找出每科科目成绩都大于对应学科平均成绩的学生...,难点有两个: 1)给每行记录(每个学生每个学科)添加该学科的平均成绩,这里开窗函数可以解决; 2)查询出“所有”科目都大于平均成绩的学生,这里的所有比较难处理,有个技巧:对每个学生的每个科目满足“成绩...>科目平均成绩”的记录打0,不满足的打1,然后对学生所有科目标签求和,和为0则满足“所有科目都大于平均成绩”,和>0则不满足; 维度 评分 题目难度 ⭐️⭐️⭐️ 题目清晰度 ⭐️⭐️⭐️⭐️⭐️ 业务常见度...avg_score from t_scores_042 查询结果 2)给每个学生每个科目进行打标,科目成绩>科目平均成绩的标记为0,反之为1; select sid, cid, score,

57810
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    试题 算法提高 统计平均成绩

    资源限制 时间限制:1.0s 内存限制:512.0MB   有4个学生,上4门课,要求输入全部学生的各门课成绩,并分别求出每门课的平均成绩。(保留2位小数)   括号里是解释内容,不用输入输出。...输入的所有数都为0到100之间(包括端点)的整数 样例输入 (输入第1个学生的4门课成绩) 94 78 87 96 (输入第2个学生的4门课成绩) 66 87 75 69 (输入第3个学生的4门课成绩)...100 98 89 77 (输入第4个学生的4门课成绩) 82 73 67 54 样例输出 (第1门课的平均成绩是) 85.50 (第2门课的平均成绩是) 84.00 (第3门课的平均成绩是) 79.50...(第4门课的平均成绩是) 74.00 import java.util.*; public class 统计平均成绩 { /** * @param args */ public static

    39410

    HiveSQL-面试题034 不及格课程数大于2的学生的平均成绩及其排名

    一、题目 有学生每科科目成绩,求不及格课程数大于2的学生的平均成绩及其成绩平均值后所在的排名。...| 3 | 72 | +------+------+--------+ 二、分析 1.本题比较简单,考查的是聚合函数、条件函数和排序开窗函数,重点在考察基础知识点 2.先计算出每个学生的平均成绩...、不及格的科目数; 3.根据平均成绩计算排名; 4.得出最后结果; 维度 评分 题目难度 ⭐️⭐️⭐️ 题目清晰度 ⭐️⭐️⭐️⭐️⭐️ 业务常见度 ⭐️⭐️⭐️⭐️ 三、SQL 1)使用聚合函数计算出每个学生的平均成绩...2)根据平均成绩计算排名 select sid, avg_score, fail_num, dense_rank()over(order by avg_score desc) as rn from...( --计算学生的平均成绩,不及格科目数 select sid, avg(score) as avg_score, sum(case when score <60 then 1 else 0 end)

    37810

    Mysql查询条件为大于时,不走索引失效问题排查

    我们都知道在数据库查询时,索引可以极大的提高查询效率。通常在使用的时候,都会针对频繁查询的关键字段建立索引。...比如,当以交易日期(trans_date)来查询交易记录时,通常会对该字段添加索引,以便在大量数据的情况下提升查询效率。...* from t_trans_log_info where trans_date > '20220122'; 上面的查询语句使用了”>“来进行范围的查询,而且trans_date字段同样创建了索引,那么上述...* from t_trans_log_info where trans_date > '20120222'; explain的结果显示走了索引: 为什么同样的查询语句,只是查询的参数值不同,却会出现一个走索引...也就是说,当Mysql发现通过索引扫描的行记录数超过全表的10%-30%时,优化器可能会放弃走索引,自动变成全表扫描。某些场景下即便强制SQL语句走索引,也同样会失效。

    3.7K20

    C语言 | 输出平均成绩最高学生的信息

    例41:有n个结构体变量,内含学生的学号,学号,和三门成绩。要求输出平均成绩最高学生的信息(包括学号、姓名、三门课程成绩和平均成绩) 解题思路:将n个学生的数据表示为结构体数组(有n个元素)。...    float aver;//平均分  } ; int main() //主函数  {   void input(struct student s[]);//函数声明    struct student...:\n");//提示语句     printf("学号;%d\n姓名;%s\n三门课成绩:%5.1f,%5.1f,%5.1f\n平均成绩:%6.2f\n",    stud.num,stud.name,...95.0 平均成绩: 95.00 -------------------------------- Process exited after 44.45 seconds with return value...C语言 | 输出平均成绩最高学生的信息 更多案例可以go公众号:C语言入门到精通

    2.4K2920

    C语言 | 求平均分及第n个人成绩

    例32:有一个班,3个学生,各学习4门课,C语言编程实现计算总平均分数以及第n个学生的成绩,要求使用指针。 解题思路:今天这道例题分为3部分,下述求的是第3个学生,读者请思考怎么改为求第n个学生。...第一步:求平均分函数: void average(float *p,int n)//自定义求平均成绩函数 { float *p_end;//定义浮点类型指针变量 float sum=0,aver...printf("平均数是:%f",aver);//输出平均分 printf("\n");//换行 } 第二步:求第n个学生成绩函数 void search_Grade(float (*...平均数是:%f",aver);//输出平均分 printf("\n");//换行 } void search_Grade(float (*p)[4],int n)//自定义求第n个学生成绩函数...{ printf("%5.2f ",*(*(p+n)+i)); } } 编译运行结果如下: 平均数是:6.500000 第3个学生的成绩是: 9.00 10.00 11.00 12.00

    1.5K2319

    mongodb查询的语法(大于,小于,大于或等于,小于或等于等等)

    大于,小于,大于或等于,小于或等于 $gt:大于 $lt:小于 $gte:大于或等于 $lte:小于或等于 例子: db.collection.find({ "field" : {...value db.collection.find({ "field" : { $lte: value } } ); // less than or equal to : field <= value 如查询...j大于3,小于4: db.things.find({j : {$lt: 3}}); db.things.find({j : {$gte: 4}}); 也可以合并在一条语句内: db.collection.find...*corp/i } ); // 后面的i的意思是区分大小写 10)  查询数据内的值 下面的查询是查询colors内red的记录,如果colors元素是一个数据,数据库将遍历这个数组的元素来查询...dot notation 举个例子: > db.blog.save({ title : "My First Post", author: {name : "Jane", id : 1}}) 如果我们要查询

    9.9K20

    C语言计算总平均分及第n个人的成绩

    例32:有一个班,3个学生,各学习4门课,C语言编程实现计算总平均分数以及第n个学生的成绩,要求使用指针。 解题思路:今天这道例题分为3部分,下述求的是第3个学生,读者请思考怎么改为求第n个学生。...第一步:求平均分函数: void average(float *p,int n)//自定义求平均成绩函数  {   float *p_end;//定义浮点类型指针变量    float sum=0,aver...    printf("平均数是:%f",aver);//输出平均分    printf("\n");//换行  } 第二步:求第n个学生成绩函数 void search_Grade(float (*...平均数是:%f",aver);//输出平均分    printf("\n");//换行  } void search_Grade(float (*p)[4],int n)//自定义求第n个学生成绩函数 ...C语言 | 计算总平均分及第n个人的成绩 更多案例可以go公众号:C语言入门到精通

    1.2K2320

    sql练习学生成绩查询实践

    进行选择) select * from sc where sc.sid not in (select sid from sc where cid='01') and sc.cid='02'; 查询平均成绩大于等于...select * from student join sc on student.sid=sc.sid where sc.cid='01' and score<60 order by score desc; 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩...*,avg(score) as ss from sc group by sid order by ss desc; 查询各科成绩最高分、最低分和平均分: 以如下形式显示:课程 ID,课程 name,最高分...)=1990; 查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列 select sc.cid,course.Cname,avg(score)as ss from sc,...course where sc.cid=course.cid group by cid order by ss desc,sc.cid asc; 查询平均成绩大于等于 85 的所有学生的学号、姓名和平均成绩

    2.1K20
    领券