50个实用SQL语句:应用系统中常见学生选课表操作

5 下载量 23 浏览量 更新于2024-08-31 收藏 61KB PDF 举报
在这个关于50个常用SQL语句的实例中,我们主要关注的是一个流行的学生选课表,该表结构包含学生表(Student),课程表(Course),以及成绩表(SC)。这些SQL语句旨在帮助读者理解和应用在实际的数据库操作中,尤其是那些与应用系统相关的查询,而非单纯的报表查询。 1. 第一条SQL语句是用于比较不同课程的成绩。它通过子查询找出"001"课程的学生成绩(a)和"002"课程的学生成绩(b),然后筛选出"001"课程成绩高于"002"课程且学号相同的记录,这样可以得到成绩更高的学生的学号。这对于评估学生在特定课程中的表现非常有用。 2. 第二条查询是基于成绩的统计分析,它计算每个学生的平均成绩,并只返回平均成绩大于60分的学生的学号及其平均成绩。这适用于监控学生成绩分布,筛选高分学生。 3. 第三个查询是基础的联接查询,它统计每个学生选择的课程数量(使用COUNT函数)和总成绩(使用SUM函数)。通过LEFT OUTER JOIN将学生表和成绩表连接起来,按学号和姓名进行分组,从而获取完整的个人信息及其选课情况。 4. 第四个SQL查询用于查找姓“李”的老师数量,使用LIKE操作符匹配以“李”开头的教师姓名,COUNT(DISTINCT)确保每个老师只被计数一次。 5. 第五个查询针对没有选修过特定教师“叶平”课程的学生,通过NOT IN子句排除那些与叶平老师关联过的学号,返回他们的学号和姓名。 6. 最后一条SQL语句则更为复杂,它不仅查询了学号和姓名,还涉及到存在性运算EXISTS,用来确认学生是否同时选修了课程编号为"001"和"002"的课程。这对于分析学生的交叉课程选择情况很有用。 这些SQL语句覆盖了多个数据处理场景,包括成绩比较、统计分析、用户行为分析等,是数据库管理员、数据分析师和开发人员在日常工作中经常使用的实用工具。熟练掌握这些查询能够大大提高数据检索和分析的效率。