作用:检索数据中符合条件的值
搜索的条件由一个或者多个表达式组成!结果为 布尔值
逻辑运算符:
| 运算符 | 语法 | 描述 |
| and && | a and b a && b | 逻辑与,两个都为真,结果为真 |
| or || | a or b a || b | 逻辑或,其中一个为真,则结果为真 |
| Not ! | a !=b not a = b | 真为假,假为真 |
-- 查询成绩在80~100分之间:、
-- and
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentresult`>=80 AND `studentresult`<=100
-- &&
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentresult`>=80 && `studentresult`<=100
-- 模糊查询(区间)
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentresult`BETWEEN 80 AND 100
-- 查询除了1000号学生之外的同学的成绩
-- !=和not
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentno`!='1000'
SELECT `studentno`,`studentresult` FROM `result`
WHERE NOT `studentno`='1000'
模糊查询,比较运算符:
| 运算符 | 语法 | 描述 |
| is null | a is null | 如果操作符为null,则结果为真 |
| is not null | a is not null | 如果操作符不为null,则结果为真 |
| between | a between b and c | 若a在b和c之间,则结果为真 |
| like | a lilke b | sql匹配,如果a匹配b,则结果为真 |
| in | a in(a1,a2,a3……) | 假设a在a1或者a2……其中的某一个值中,结果为真 |
代码案例:
-- 模糊查询
-- like结合 %(代表0到任意个字符)或者 _(一个字符)
SELECT `studentno`,`studentname` FROM `student`
WHERE `studentname` LIKE '赵%'
-- 查询姓赵的同学,后面只有一个字的
SELECT `studentno`,`studentname` FROM `student`
WHERE `studentname` LIKE '赵_'
-- 查询名字中间有强的同学,%强%
SELECT `studentno`,`studentname` FROM `student`
WHERE `studentname` LIKE '%强%'
-- 查询名字中间有伟的同学,%伟%
SELECT `studentno`,`studentname` FROM `student`
WHERE `studentname` LIKE '%伟%'
-- in(具体的一个或者多个值),精准查询
-- 查询在安慰和湖南的学生
SELECT `studentno`,`studentname` FROM `student`
WHERE `address` IN('安徽','湖南')
-- 查询1000,1002号学生
SELECT `studentno`,`studentname` FROM `student`
WHERE `studentno` IN('1000','1002')
-- null,not null
-- 查询地址为空的学生 null,''
SELECT `studentno`,`studentname` FROM `student`
WHERE `address`='' OR `address`IS NULL
-- 查询有出生日期的同学
SELECT `studentno`,`studentname` FROM `student`
WHERE `borndate` IS NOT NULL
-- 查询没有出生日期的同学
SELECT `studentno`,`studentname` FROM `student`
WHERE `borndate` IS NULL