在数据库管理中,SQL语言是处理和管理关系数据库的重要工具。以下是50个常见的SQL查询语句示例,帮助您快速掌握数据库操作技巧: ### SQL基本概念####表定义- Student(S#, Sname, Sage, Ssex):学生表,包含学号(S#)、姓名(Sname)、年龄(Sage)、性别(Ssex)。 - Course(C#, Cname, T#):课程表,包括课程编号(C#)、课程名称(Cname)、教师编号(T#)。 - SC(S#, C#, score):选课表,记录学生的学号(S#)、课程编号(C#)及分数(score)。 - Teacher(T#, Tname):教师表,包括教师编号(T#)、教师姓名(Tname)。 ### SQL语句解析与应用实例####实例1:比较两门课程的成绩sql SELECT a.S# FROM (SELECT s#, score FROM SC WHERE C#='001') a, (SELECT s#, score FROM SC WHERE C#='002') b WHERE a.score > b.score AND a.s#=b.s#; - 功能:找出在课程编号为“001”的课程成绩高于课程编号为“002”课程成绩的学生学号。 - 解析:首先通过子查询分别获取两门课程的成绩信息,然后在外层查询中比较成绩,并返回成绩高的学生的学号。 ####实例2:计算每名学生的平均成绩(大于60分) sql SELECT S#, AVG(score) FROM SC GROUP BY S# HAVING AVG(score) > 60; - 功能:计算每个学生的平均成绩,只显示平均成绩大于60分的学生信息。 - 解析:使用AVG()函数计算平均成绩,并用GROUP BY按学生分组,最后通过HAVING子句过滤出平均成绩大于60分的学生。 ####实例3:查询学生基本信息及所选课程数量、总成绩sql SELECT Student.S#, Student.Sname, COUNT(SC.C#), SUM(score) FROM Student LEFT OUTER JOIN SC ON Student.S#=SC.S# GROUP BY Student.S#, Sname;