今日刷题遇到:
描述
题目要求查询课程表 courses 中,教师 id teacher_id
不为 3,且学生人数 student_count
超过 800 的所有课程,最后返回满足条件的课程的所有信息。
OR:
select * FROM courses where NOT (teacher_id = 3 or student_count <= 800 )
和这个语法:
AND:
select * FROM courses where NOT (teacher_id = 3 and student_count <= 800 )
其实第二个语法里的not()的优先级会更高,第二个语句相当于以下代码段:
select * FROM courses where not teacher_id = 3 or student_count > 800
select XXX from XXX WHERE NOT ('XXX' AND 'XXX' ) = select XXX from XXX WHERE NOT 'XXX' OR XXX NOT 'XXX'