【1】面试谈——sql
说在前面的话
笔试一般都有sql题,直接喊你手写出来的那种,这种都是很痛苦的,因为没有用机器写,不知道哪里会报错。
例子:学生表、科目成绩表
例如:
- 1.查询所有学生的英语2成绩,显示学生姓名name, 分数, 由高到低
- 2.统计每个学生的总成绩,显示字段:姓名,总成绩
- 3.列出各门课程成绩最好的学生, 要求显示字段: 学号,姓名,科目,成绩


1.查询所有学生的英语2成绩,显示学生姓名name, 分数, 由高到低
select a.name,b.score from student a,grade b where a.id=b.id and subject='英语2' order by score desc;

2.统计每个学生的总成绩,显示字段:姓名,总成绩
select a.name,sum(b.score) from student a,grade b where a.id=b.id GROUP BY name;

3.列出各门课程成绩最好的学生, 要求显示字段: 学号,姓名,科目,成绩
第一步先group by找出单科最好成绩,作为第一张表
select b.subject,max(b.score) from grade b GROUP BY subject;

SELECT c.id , a.name, c.subject, c.score FROM grade c, student a, (SELECT b.subject, MAX(b.score) as max_score FROM grade b GROUP BY subject) t WHERE c.subject = t.subject AND c.score = t.max_score AND a.id = c.id


原文:https://www.cnblogs.com/yoyoketang/p/10065424.html
善于跌倒仍喜爱奔跑~

浙公网安备 33010602011771号