【sql:练习题3】查询在 SC 表存在成绩的学生信息

题目:查询在 SC 表存在成绩的学生信息

 

分析:查询在 SC 表存在成绩的学生? 是值在 SC 表有记录的学生id 都算吗? 我这里理解的是在 SC 表中分数不为0 的学生id

方法一:比较直接的想法  在 SC 表中查到分数不为0 的学生 去重,然后再join 下student 表

SELECT a.id, a.stdentname,a.age,a.sex FROM student a JOIN
     (SELECT DISTINCT studentid FROM student_score WHERE score<>0)b
ON a.id = b.studentid

 

方法2:直接两张表查 student,  SC 表 拿到学生信息后去重

 SELECT DISTINCT student.* FROM student,student_score WHERE student.id= student_score.studentid

查询的结果跟上面是一样的:

 

posted @ 2019-08-08 18:47  初学者,方圆几里  阅读(7043)  评论(0编辑  收藏  举报