`

用SQL语句查询每门成绩都大于80的学生姓名

 
阅读更多
昨天遇到的一个SQL面试题,感觉很有趣。

表名stu 结构如下
name km   fs
张三 语文 81
张三 数学 75
李四 语文 76
王五 英语 90
李四 数学 90
王五 语文 81
王五 数学 99
用SQL语句查询每门成绩都大于80的学生姓名

CREATE TABLE student
(
	s_id INT PRIMARY KEY IDENTITY,
	s_name VARCHAR(20),
	s_course  VARCHAR(20),
	s_score DECIMAL(18,2)
)
go
INSERT INTO student
(
	s_name,
	s_course,
	s_score
)
SELECT 
'张三', '语文', 81 
 UNION ALL
select '张三', '数学', 75
UNION 
SELECT '李四', '语文', 76 
UNION
SELECT '王五', '英语', 90
UNION
SELECT '李四', '数学', 90
UNION
SELECT '王五','语文', 81
UNION
SELECT '王五', '数学', 99 
GO


 SELECT s_name
   FROM student GROUP BY s_name
HAVING  MIN(s_score)>=80



SELECT distinct s_name FROM student WHERE NOT EXISTS
(SELECT 1 FROM student t WHERE t.s_name=student.s_name AND t.s_score<80)

分享到:
评论

相关推荐

    50个常用sql语句实例(学生表课程表成绩表教师表)[归类].pdf

    该实例使用了 AVG 函数来计算平均成绩,然后使用 HAVING 语句来筛选出平均成绩大于 60 分的记录。 3. 查询所有同学的学号、姓名、选课数、总成绩 该实例使用了 LEFT OUTER JOIN 语句来连接学生表和成绩表,然后...

    SQL语句练习题及答案

    - **示例**: 查询1号课成绩大于80分的学生的学号及成绩,并按成绩由高到低排序。 - **SQL语句**: `SELECT 学号, 成绩 FROM 选课 WHERE 课号 = '1' AND 成绩 &gt; 80 ORDER BY 成绩 DESC` **知识点5:非条件查询** - *...

    50个SQL 语句的例子(基本覆盖所有sql语句)

    SQL语句示例集锦 数据库学习的重要性不言而喻,本篇文章收录了50个SQL语句的例子,涵盖了...这些示例涵盖了基本的SQL语句操作,如子查询、连接查询、聚合函数、having子句等,旨在帮助初学者快速掌握SQL语句的使用。

    统计成绩SQL语句

    - 添加`HAVING`子句来筛选出平均成绩大于某个阈值的学生。 - 结合其他字段(如学生姓名)进行展示。 ### 5. 列出各门课程成绩最好的学生 原始SQL语句为: ```sql select t1.StudentID, t1.CourseID, t2.maxscore ...

    sql面试题很详细的sql语句面试题

    一、查询每门课都大于80分的学生姓名 问题:使用一条SQL语句查询出每门课都大于80分的学生姓名。 解决方案:select distinct name from table where name not in (select distinct name from table where fenshu&lt;=...

    交互式SQL的使用,创建Student数据库,包括Students,Courses,SC表

    (7)查询所有课程的成绩都在80分以上的学生的姓名、学号、且按学号升序排列; (8)查询缺成绩的学生的姓名,缺成绩的课程号及其学分数; (9)查询有一门以上(含一门)三个学分以上课程的成绩低于70分的学生的姓名...

    50个经典SQL语句

    本资源提供了50个经典的SQL语句,帮助用户快速掌握SQL语言的使用。该资源包含了多种SQL语句,包括查询语句、插入语句、更新语句、删除语句等,涵盖了SQL语言的各个方面。 知识点一:查询语句 * 查询“001”课程比...

    50句常用SQL语句

    从给定的文件标题“50句常用SQL语句”及其描述中,我们可以看出这份资料旨在分享在数据库管理和数据检索中频繁使用的SQL查询语句。SQL(Structured Query Language)是用于管理关系数据库的标准语言,其功能强大,...

    一道题涉及到50个SQL语句

    "一道题涉及到50个SQL语句" 这道题目主要考察了 SQL 语句的使用,涉及到多表连接、子查询、聚合函数等知识点。下面将对每个问题进行详细的解释和分析: 1. 查询“001”课程比“002”课程成绩高的所有学生的学号: ...

    数据库原理及运用实验四SQL连接查询.doc

    8. 查询课程平均成绩大于 80 的课程名称:使用 AVG 函数和 GROUP BY 语句实现分组查询。 9. 查询选修人数最多的课程名称:使用 COUNT 函数和 GROUP BY 语句实现分组查询。 10. 查询计算机系的学生选修课程中选修...

    sql超级经典(练习题+答案)

    --25、查询各科成绩前三名的记录--25.1 分数重复时保留名次空缺--25.2 分数重复时不保留名次空缺,合并名次--sql 2000用子查询实现--sql 2005用DENSE_RANK实现--26、查询每门课程被选修的学生数 --27、查询出只有两...

    sql语句练习题及答案

    -- 查询每门课程成绩都高于该门课程平均分的学生学号 SELECT S.Sno FROM Student S JOIN SC SC ON S.Sno = SC.Sno WHERE SC.Grade &gt; (SELECT AVG(Grade) FROM SC WHERE Cno = SC.Cno) GROUP BY S.Sno HAVING COUNT...

    mysql 查询语句学生表、课程表、 成绩表、教师表.docx

    该语句使用了聚合函数 avg() 和 group by 语句,firstly,查询出所有学生的成绩,接着使用 group by 语句将结果集进行分组,最后使用 having 语句筛选出平均成绩大于 60 分的学生。 3. 查询所有同学的学号、姓名、...

    sql查询语句练习(解析版) by 荒唐的达达7

    ### SQL 查询语句练习知识点详解 #### 一、SQL 表结构及数据插入 - **学生表 (Student):** - `S#` (学生编号): varchar2(20) - `Sname` (学生姓名): varchar2(10) - `Sage` (学生年龄): int - `Ssex` (学生性别...

    sql查询语句练习

    该查询返回每位学生的学号、姓名以及他们选课的数量和总成绩。 **SQL语句详解:** ```sql select Student.S#, Student.Sname, count(SC.C#), sum(score) from Student left Outer join SC on Student.S# = SC.S# ...

    SQL语句基本语法

    - 使用连接查询,例如查询学生姓名及其对应的教师姓名: SELECT sname, tname FROM student JOIN teacher ON student.sno = teacher.tno; SQL语句基本语法的学习对于数据库管理和数据操作至关重要,能够帮助开发者...

    50个基本SQL语句

    9. 第九条语句使用`not in`排除所有课程成绩大于60分的学生。 10. 第十条语句通过分组和`having`子句找出没有学完所有课程的学生。 11. 最后一条语句使用子查询来查找选课数不等于所有课程数的学生。 这些SQL语句...

    50个常用sql语句

    - **功能**:计算每个学生的平均成绩,只显示平均成绩大于60分的学生信息。 - **解析**:使用`AVG()`函数计算平均成绩,并用`GROUP BY`按学生分组,最后通过`HAVING`子句过滤出平均成绩大于60分的学生。 #### 实例3...

    SQL查询语句练习

    - **知识点**:这里使用了子查询来获取每个课程的平均成绩,并在外层查询中比较单个学生的成绩是否低于该课程的平均成绩。 #### 34. 查询所有任课教师的Tname和Depart. - **SQL语句**:`SELECT ...

    sql查询语句精炼

    该查询使用左连接(`LEFT OUTER JOIN`)来确保所有学生的信息都被包含进来,并使用`COUNT`和`SUM`函数统计每位学生的选课数量和总成绩。 ```sql SELECT Student.S#, Student.Sname, COUNT(SC.C#), SUM(Score) FROM ...

Global site tag (gtag.js) - Google Analytics