where 条件子句

作用:检索数据中符合条件的值

搜索的条件由一个或者多个表达式组成!结果为 布尔值

逻辑运算符:

运算符 语法 描述
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

你可能感兴趣的:(MySQL,数据库,sql,mysql)