SQL外连接中如何使用AND条件?


在类似 SELECT XX FROM XX JOIN XX ON XX = XX AND XXXXX 这样的语句中,AND条件是怎么使用的呢?
例如,执行下面这条SQL语句时


 sql


 SELECT s.s_no,c.course_no,score
FROM student s LEFT JOIN choice c ON s.s_no = c.s_no;

结果如下:
图片描述

在后面加上AND条件后


 sql


 SELECT s.s_no,c.course_no,score
FROM student s LEFT JOIN choice c ON s.s_no = c.s_no AND score != 88;

结果变成了:
图片描述
原本的第7行被过滤掉可以理解,为什么原本的第9行结果也被过滤了呢?

sql 数据库 sqlserver

mldicon 9 years, 10 months ago

请在SQL后面加一个order by,人为指定其排序规则,防止由于结果的排序问题导致第一张表第9行记录出现在很后面

父爱如山黄旭东 answered 9 years, 10 months ago

Your Answer