如何结合muli或SQL

时间:2016-04-10 17:51:48

标签: sql

我在我的程序中有这个查询我希望查询忽略,如果它看到字母 NP或DN,但是当我这样写这个查询时它工作得很好,但确实忽略了字母NP或DN。

如何让查询忽略字母NP或DN?

SELECT 
    SUM(crd) 
FROM 
    courses 
INNER JOIN 
    student_record ON courses.course_number = student_record.course_number 
INNER JOIN 
    grades ON student_record.grade = grades.letter 
           AND (student_record.grade != 'NP' OR student_record.grade != 'DN')
 WHERE 
     student_record.id = 201102887 

1 个答案:

答案 0 :(得分:1)

使用NOT IN

ON student_record.grade = grades.letter AN
   (student_record.grade NOT IN ('NP' , 'DN')

对您的逻辑的修复是使用AND而不是OR。逻辑操作可能会让人感到困惑,尤其是负面操作。在这种情况下,我认为NOT IN更容易编写和理解。