SQL面试题精选:50道必会题解析及学生、科目、教师、分数表操作案例
SQL 必会50道面试题
学生表:Student(s_id,s_name,s_birth,s_sex) 科目表:Subject(c_id,c_name,t_id) 教师表:Teacher(t_id,t_name) 分数表:Score(s_) id,c_id,s_score) 以下是 50 次面试问题,关键问题包括: 1/2/5/6/7/10/11/12/13/15/17/18/19/22/23/25/ 31/35/36/40/41/42/45/46 共 16 个问题。1. 询问编号为“01”的科目成绩高于科目“02”的所有学生的学号。
方法一:sqlSELECTs_idFROMScoreWHEREc_id='01'ANDs_score>(SELECTAVG(s_score)FROMScoreWHEREc_id='02' 方法二:sqlSELECTs_idFROMScoreASaJO IN(SELECTc_id,MAX(s_score)ASmax_scoreFROMScoreGROUPBYc_id)ASbONa.c_id=b.c_idANDa.s_s核心>b. 2. 查询分数高于 60 分的学生的学号和平均成绩。
sqlSELECTs_id,AVG(s_score)ASavg_scoreFROMScoreGROUPBYs_idHAVINGAVG(s_score)>60 3. 查询所有学生的学号、姓名、选课数和总成绩。
“张三”的班级。
sqlSELECTs_id,s_nameFROMStudentWHEREs_idNOTIN(SELECTs_idFROMScoreJOINTeacherONScore.t_id=Teacher.t_idWHEREt_name='张三' 6.查询学过所有“张三”的学生学号和姓名。
sqlSELECTs_id,s_nameFROMStudentJOINScoreONStudent.s_id=Score.s_idJOINTeacherONScore.t_id=Teacher.t_idWHEREt_name='张三' 7.查询学习过该课程的学生的学号,也学习了“01”号。
sqlSELECTs_id,s_nameFROMStudentWHEREs_idIN(SELECTs_idFROMScoreWHEREc_id='01')ANDs_idIN(SELECTs_idFROMScoreWHEREc_id='02');8 查询课程号“02”的总成绩。
sqlSELECTSUM(s_score)AStotal_scoreFROMScoreWHEREc_id='02';9 询问所有课程学分低于 60 分的学生的学号和姓名。
sqlSELECTs_id,s_nameFROMStudentWHEREs_idIN(SELECTs_idFROMScoreWHEREs_score<60 sqlSELECTs_id,s_nameFROMStudentWHEREs_idNOTIN(SELECTs_idFROMScoreGROUPBYs_idHAVINGCOUNT(DISTINCTc_id)=(SELECTCOUNT(*)FROMCourse)); sqlSELECTs_id,s_nameFROMStudentWHEREs_idIN(SELECTs_idFROMScoreWHEREc_idIN(SELECTc_idFROMScoreWHEREs_id='01' sqlSELECTs_idFROMScoreWHEREs_id!='01' ANDs_idIN(SELECTs_idFROMScoreWHEREc_idIN(SELECTc_idFROMScoreWHEREs_id='01' sqlSELECTs_nameFROMStudentWHEREs_idNOTIN(SELECTs_idFROMScoreJOINTeacherONScore.t_id=Teacher.t_idWHEREt_name sqlSELECTs_id,s_name,AVG(s_score)ASavg_scoreFROMStudentJOINScoreONStudent.s_id=Score.s_idWHEREs_score60GROUPBYs_id,s_nameHAVINGCOUNT(*)>=2;16 获取学生信息,按照0分顺序,按0分排序。
sqlSELECT*FROMStudentJOINScoreONStudent.s_id=Score.s_idWHEREc_id='01'ANDs_score<60ORDERBYs> sqlSELECTs_id,s_name,c_id,c_name,AVG(s_score)ASavg_scoreFROMStudentJOINScoreONStudent.s_id=Score.s_idJO INCourseONScore.c_id=Course.c_idGROUPBYs_id,s_name,c_id,c_nameORDERBYavg_scoreDESC;18 查询各组最高分、最低分和平均分主题。
sqlSELECTc_id,c_name,MAX(s_score)ASmax_score,MIN(s_score)ASmin_score,AVG(s_score)ASavg_score,CASEWHENAVG(s_score)>=90THEN'优秀'WHENAVG(s_score) )>=80THEN'优秀'WHENAVG(s_score)>=70THEN'中等'ELSE'及格'ENDASgradeFROMCourseJOINScoreONCourse.c_id=Score.c_idGROUPBYc_id,c_name;19 按各科目的分数排序并显示排名。
sqlSELECTs_id,s_nAME, C_ID, C_NAME, S_SCORE, ROW_NUMBER () 以上 (Partitionbyc_idorderbys_scoredesc) AsrankFromScoreJoinStudentonScore.s_id = Student.s_idjointerseonsco re.c_id = course.c_id; 本质 SQLSELECTS_ID, S_NAME, C_ID, C_NAME, S_SCORE, CASEWHENRANK = 2Thenras 2. _id = 学生.s_idjoincourseonScore.c_id = course.c_id ) ASTEMP; Sqlselectc_id、c_name、计数(casewhes_score> = 100then1end)as'100-85',count(casewhens_score> = 85then1end)-count(casewhens_soune> = 100theen1en1en d)as'85-70',as'85-70',casewhenscens> d)-count(casewhens_score> = 70then1end)为're.c_id = course.c_idgroupbyc_id,c_name;

有什么适合大一计算机专业学生免费的刷题网站?
不要尝试任何 Giri 伎俩。
成功后没有人出现。
当你专注于电脑时,其他人就会超越你。
同学们明白了。
" p>英文网址:https:英文网址:HTTPS://leetcode.com/
中文网址:https: //leetcode-cn./
国外的题我都刷过,难度是从easy、medium到hard。
还没准备好就不容易了,是的,题目都是英文的,内容都是英文的。
牛客网中国超级IT右岸+求职+360度无死角讨论
它不仅仅是一个画笔的平台,更是一个交流和学习的平台。
3、hihocoder网站:https://hihocoder.com
该网站技术团队介绍,该网站与崇拜没有任何关系。
微软、百度、腾讯西特等一些知名大厂商都会举办在线编程大赛。
比赛风格与ACM比赛类似。
别让我停在这里。
我每周都会玩 Hihocoder 每周游戏。
周赛提出疑问。
我对这个话题很感兴趣。
扩大你的问题。
您可以快速解决您的问题。
同时,在解决问题的过程中了解自己的弱点。
这将是一个在这个级别上展示自己的绝佳机会。
4. HDU
网址:http://acm.hdu.edu.cn/
杭州电子科技职业技术学院) OJ 可能是最受欢迎的 OJ,要么是本地的,要么是好的。假期里,朝鲜、蒙古将等待校队。
我不知道,我不知道。
5、poj
网址:http://poj.org/
p>
我在介绍sihocoder(Pekinguniversityonlinejudge)作为中国最受欢迎的OJ之一时所说的话,6. CODEFORICESE
网址:https://codeforcess.com/
codeforcess也是CF。
致电 CODEFOREND,这是一个俄语网站。
。
是的,吃英语。
这里有好游戏、好问题、好问题,简称“三好”。
CF最吸引人的地方就是它的超级牛批比赛系统。
在CS中,每个用户都有一个排名。
你被分配到类别 1500。
积分上的积分 - Div1、Div2、Div3、EducationCentactCodcodeforcround 比赛通常基于积分。
仅在 0能 Div1的比赛是最困难的。
EducationCodcodeForcrenroundroundround是一个类似于ACM的游戏,提交后立即出结果。
但如果只有这个限制的话,CF的竞赛更多的是支持hack功能。
还有一些有趣的事情。
用通俗的话来说,就是你看到别人提交的代码。
通过呈现您想要执行的特定测试用例来呈现它。
然后找出别人代码中的错误就可以恢复已经成功插入的点了,游戏性就更多了。
在黑客和反黑客中享受乐趣并对抗智慧。
但在国内,俄罗斯和时差。
一般来说,他们中的大多数人都希望在比赛中获得0分。
到晚上11:00,hack和评测反馈,然后刺激一下,几乎一样,几乎一样,几乎一样,几乎一样,几乎一样,几乎一样,几乎一样,几乎一样,几乎一样一样一样,几乎一样。
都是一样的,不过他们在外面玩得很开心。
如果你没有时间,你也可以自己制作上面的标题。
题目质量很好,可以自己练习。
oracle sql查询前50个记录 我的语句是select top 50 * from table order by id desc;
Oracle没有top语法,所以用rownum相关文章

独角兽企业招聘盘点:互联网科技领域高薪职...
2024-12-19 00:29:30
Java大数据:两者关系解析与学习路径推...
2024-12-15 11:54:05
SPSS10.0字符转数值教程:高效数据...
2024-12-28 17:27:48
C语言课程设计经验分享:理论与实践相结合...
2025-01-13 05:01:54
Python列表、数组与元组:深度解析与...
2025-03-09 08:14:38
C语言程序扩展名全解析:.c、.obj与...
2024-12-18 02:47:58
Excel字符串比较与截取技巧详解
2024-12-16 10:46:12
C语言基础解析:void func1(i...
2025-03-21 09:14:32
JavaScript与C语言字符串处理技...
2024-12-26 11:45:54