13-MySQL-Ubuntu-数据表的查询-条件查询(二)

条件查询

 

1,比较查询(>,<,>=,<=,=)注:SQL查询语句的等于号(=)

 

(1)查询学生表中年龄大于18岁的学生姓名和性别信息

select name,gender from students where age>18;

 

(2)查询学生表中年龄大于等于18岁的学生姓名和性别信息

select name,gender from students where age>=18;

 

(3)查询学生表中年龄等于18岁的学生姓名和性别信息

select name,gender from students where age=18;

 

2,逻辑查询(and or not)

 

(1)查询年龄大于18岁并且是女生的学生信息;

select * from students where age>18 and gender=2;

 

(2)查询年龄大于18岁或者身高等于180的学生信息;

select * from students where age>18 or height=180;

(3)查询不在 18岁以上女生 这个范围内的学生信息;

select * from students where not (age>18 and gender=2);

 

(4)查询 年龄不是小于或者等于18岁 并且是女生的学生信息;

select * from students where not (age<=18 )and gender=2;

3,模糊查询

(1)like

%(通配符)---表示0个或多个字符;

_(通配符)---表示1个字符;

 

查询表中姓名以'小'开始的学生信息;

select  * from students where name like '小%';

 

查询表中姓名有'小'的学生信息;

select  * from students where name like '%小%';

 

查询表中姓名有两个字的学生信息;

select  * from students where name like '__';

查询表中姓名至少有两个字的学生信息;

select  * from students where name like '__%';

(2) rlike

正则表达式

. 表示单个字符;

*对前一个字符0次或无限次扩展;

^匹配字符串开头;

$匹配字符串结尾;

贪婪模式:尽可能多地匹配(默认)

懒惰模式:尽可能少地匹配,精准模式

如果出现如下组合,则代表为懒惰模式

*?

+?

 

查询以'周'开始的名字;

select * from students where name rlike '^周';

 

查询以'周'开始以'伦'结束的名字; 

select * from students where name rlike '^周.*伦$';

posted on 2019-06-16 11:38  Summer儿  阅读(376)  评论(0编辑  收藏  举报

导航