mysql表单查询语句
本篇文章给大家介绍的是mysql表单查询语句中的where条件查询语句,共分为8小节,基础语法及案例说明(where子句查询)
1 带关系运算符的查询
语法:select 字段名1,字段名2,..... from 表名 where 条件表达式
案例1:查询student表中id为4的学生姓名
select id,name from student where id=4;
案例2:查询student表中name为wusong的学生性别
select name,gender from student where name='wusong'
案例3:查询student表中grade大于80分的学生姓名
select name,grade from student where grade>80;
2 带in关键字的查询
语法:select * | 字段名1,字段名2,...... from 表名 where 字段名 [not] in (元素1,元素2,...);
案例1:查询student表中id的值为1,3,4的记录
select * from student where id in (1,3,4,);
案例2:查询student表中id的值不为1,3,4的记录
select * from student where id not in (1,3,4,);
3 带between and 关键字的查询(区间范围查询)
语法:select * | {字段名1,字段名2,......} from 表名 where 字段名 [not] between 值1 and 值2
区间范围查找 包含值1 值2
案例:查询student表中id值在2-5之间的学生姓名
select id,name from student where id between 2 and 5;
4 空值查询
语法:select * | 字段名1,字段名2,...... from 表名 where 字段名 is [not] null
案例1:查询student表中gender为空值的记录
select * from student where gender is null;
案例2:查询student表中gender不为空值的记录
select * from student where gender is not null;
5 带distinct关键字的查询(去除重复值)
语法:select distinct 字段名 from 表名;
案例1:查询student 表中有哪些性别 要求不重复
select distinct gender from student;
案例2:查询student表中gender和name字段,使用distinct关键字作用于这两个字段
select distinct gender,name from student;
(必须gender和name两个的值都相同才可以去除重复值)
6 带like关键字的查询 (模糊查询)
语法:select * | {字段名1,字段名2,......} from 表名 where 字段名 [not] like '匹配字符串';
(1)带百分号% 通配符
案例1:查找student表中name字段以s开头的学生id
serect id,name from student where name like's%';
%:表示取值范围0-多个任意字符
案例2:查找student表中name字段以w开头,以g结尾的学生id
serect id,name from student where name like'w%g';
案例3: 查找student表中name字段值包含y的学生id
serect id,name from student where name like'%y%';
(2)带下划线_ 通配符
案例1:查找student表中name字段以wu开头,以字符串ong结尾,并且两个字符串中间只有一个字符的记录
serect id,name from student where name like'wu_ong';
案例2 :查找student表中name字段值包含7个字符,并且以字符串ing结束的记录
serect id,name from student where name like '_______ing';
_ :代表一个字符,上面大长横线就是输入了四个下划线 ( _ )
案例3:查找student表中name字段包含%的记录 转义字符
serect id,name from student where name like'%\%%';
查询记录时如果需要查询%或者_ 在记录中则在字符面前加上转义字符 \
7 带and关键字的多条件查询
连接两个或者多个查询条件
语法:select * | {字段名1,字段名2,......} from 表名 where 条件表达式1[...and条件表达式n];
案例1:查询id字段值小于5,并且gender字段值为v的所有学生信息
select * from student where id<5 and gender='v';
and :且 两边为真结果才为真,查询出来的结果必须同时满足所有条件
案例2:查询student表中id字段的值在(1,2,3,4)中 name字段值以字符串ng结束,并且grade字段值小于80的记录
select * from student where id in(1,2,3,4)and name like'%ng' and grade<80;
8 带or关键字的多条件查询
语法:select * | {字段名1,字段名2,...} from 表名 where 条件表达式1 or[...or条件表达式n];
案例1:查询id小于3或者gender为v的学生信息
select * from student where id<3 or grnder='v';
案例2:查询name字段以字符h开头,或者gender字段为v,或者grade为100
select * from student where name like 'h%' or gender='v' or grade=100;
补充:or和and一起使用的情况
查询gender字段值为v 或者gender字段值为男,并且grade为100的记录
select * from student gender='v' or gender='n' and grade=100
注意:如果and和or一起使用是先执行and语句后执行or语句 如果要先执行or可以加括号
~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ ~~~~~
好的以上就是要给大家分享的where条件查询语句的八种类型 ,学习道路上九万里陪你一起努力努力再努力!!!