MySQL笔记之基本查询的应用详解

316 查看

参考表:student



多字段查询

复制代码 代码如下:

mysql> select id,name,birth from student;


所有字段查询
复制代码 代码如下:

mysql> select * from student;


where指定查询
复制代码 代码如下:

mysql> select * from student where id=901;
mysql> select * from student where id>=904;
mysql> select name from student where department='计算机系';


in指定集合查询
复制代码 代码如下:

mysql> select * from student where birth in(1988,1990);
mysql> select * from student where id in(903,906);

not in非范围查询
复制代码 代码如下:

mysql> select * from student where birth not in(1990,1998);


between and指定范围查询
复制代码 代码如下:

mysql> select * from student where birth between 1986 and 1988;


not between and不在指定范围的查询
复制代码 代码如下:

mysql> select * from student where id not between 904 and 906;


like字符串匹配查询
复制代码 代码如下:

mysql> select * from student where name like '_三';
mysql> select * from student where name like '张三';
mysql> select * from student where name like '张%';


not like不匹配查询
复制代码 代码如下:

mysql> select * from student where name not like '张%';


null查询
复制代码 代码如下:

mysql> select * from student where address is null;


and多条件查询
复制代码 代码如下:

mysql> select * from student where name like '张%' and birth>1985;
mysql> select * from student where name like '张%' and birth>1985 and id like '%3';


or多条件查询
复制代码 代码如下:

mysql> select * from student where id=905 or birth=1988;
mysql> select * from student where id=905 or birth=1988 or sex='女';

distinct查询结果不重复

复制代码 代码如下:

mysql> select distinct sex from student;
mysql> select distinct department from student;


order by查询结果排序
复制代码 代码如下:

mysql> select * from student order by birth;
mysql> select * from student order by birth asc;
mysql> select * from student order by birth desc;


group by分组查询
复制代码 代码如下:

mysql> select sex,group_concat(name) from student group by sex;
mysql> select sex,count(name) from student group by sex;


正则表达式查询
复制代码 代码如下:

mysql> select * from student where birth regexp '1988|1990';


limit限制查询结果数量
复制代码 代码如下:

mysql> select * from student limit 2;
mysql> select * from student limit 1,3;