or是或,左右满足一个条件即可;
and是并且,左右的条件必须都满足.
SELECT 姓名 FROM 班级 WHERE 课程名称='影视鉴赏' or 课程名称='音乐品鉴'; -- 查找选了'影视鉴赏'或者选了'音乐品鉴'的学生姓名,只要选择了一个课程就满足条件;
SELECT 姓名 FROM 班级 WHERE 课程名称='影视鉴赏' and 课程名称='音乐品鉴'; -- 查找选了'影视鉴赏'并且选了'音乐品鉴'的学生姓名,必须同时选择了这2个课程才满足条件;
a or b 就是a或b一个条件为真,整个判断就是真,所以为真范围是a和b的并集,a and b就是a和b都是真,整个判断就是真,是交集。比如30岁以上 or 大学毕业,就是说是大学毕业的就行,非大学毕业的人就要30岁以上才行;比如30岁以上 and 大学毕业,就是 必须大学毕业而且30岁以上。
or表示2变的条件满足一个就可以了
and是左右2变的条件必须都满足
例子
A表
col1 col2
1 2
1 1
2 2
2 3
select * from A where col1=2 or col2=2
结果是
1 2
2 2
2 3
select * from A where col1=2 and col2=2
结果是
2 2