MySQL数据库where查询条件有哪些?
使用where子句对表中的数据筛选,结果为true的行会出现在结果集中,语法如下:
select * from 表名 where 条件;
where后面的筛选条件有以下5种:
1.比较运算符
-
等于:=
-
大于:>
-
大于等于:>=
-
小于:<
-
小于等于:<=
-
不等于:!=
通过以下几个例子来加深理解:
- 查询没被删除的学生
select * from students where isdelete=0;
- 查询编号大于3的学生
select * from students where id>3;
- 查询编号不大于4的科目
select * from subjects where id<=4;
- 查询姓名不是“黄蓉”的学生
select * from students where sname!='黄蓉';
2.逻辑运算符
-
and
-
or
-
not
例如:
- 查询编号大于3的女同学
select * from students where id>3 and gender=0;
- 查询编号小于4或没被删除的学生
select * from students where id<4 or isdelete=0;
3.模糊查询
-
like
-
%表示任意多个任意字符
-
_表示一个任意字符
例:
-
查询姓黄的学生
select * from students where sname like '黄%';
- 查询姓黄并且名字是一个字的学生
select * from students where sname like '黄_';
- 查询姓黄或叫靖的学生
select * from students where sname like '黄%' or sname like '%靖%';
4.范围查询
-
in表示在一个非连续的范围内
-
between ... and ...表示在一个连续的范围内
例:
-
查询编号是1,3,8的学生
select * from students where id in(1,3,8);
- 查询编号是3-8的学生
select * from students where id between 3 and 8;
5.空判断
-
注意:null与空字符串''是不同的
-
判空is null
-
判非空is not null
例:
- 查询没有填写地址的学生
select * from students where hometown is null;
- 查询填写了地址的女生
select * from students where hometown is not null and gender=0;