我是靠谱客的博主 想人陪心情,最近开发中收集的这篇文章主要介绍MySql的复习(六):Union和Limit的用法MySql的复习(六):Union和Limit的用法,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
MySql的复习(六):Union和Limit的用法
union
union可以合并集合(相加)
- 采用or
select ename,job from emp where job = 'MANAGER' or job = 'SALESMAN';
- 查询job包含MANAGER和包含SALESMAN的员工
select * from emp where job in('MANAGER', 'SALESMAN');
- 采用union来合并
select * from emp where job='MANAGER'
union
select * from emp where job='SALESMAN';
拼接的数据必须两两相对应。不能一张表是一个数据,另一张表是两个数据,这样无法拼接!
limit(重点)
主要用于提取前几条或者中间某几行数据,limit是mysql特有的,其他数据库中没有,不通用。(Oracle中有一个相同的机制,叫做rownum)
语法机制:
limit startIndex, length
startIndex表示起始位置,从0开始,0表示第一条数据。
length表示取几个
案例:取出工资前5名的员工(思路:降序取前5个)
select ename,sal from emp order by sal desc;
取前5个:
select ename,sal from emp order by sal desc limit 0, 5;
select ename,sal from emp order by sal desc limit 5;
取得前五条数据
select * from emp limit 5;
从第二条开始取两条数据
select * from emp limit 1,2;
取得薪水最高的前5名
select * from emp e order by e.sal desc limit 5;
找到工资排在第四到第九位的员工
select ename,sal from emp order by sal desc limit 3,6;
关于分页
- limit是sql语句最后执行的一个环节:
select 5
...
from 1
...
where 2
...
group by 3
...
having 4
...
order by 6
...
limit 7
...;
- 通用的标准分页
每页显示3条记录:
第1页:0, 3
第2页:3, 3
第3页:6, 3
第4页:9, 3
第5页:12, 3
每页显示pageSize条记录:
第pageNo页:(pageNo - 1) * pageSize, pageSize
pageSize是什么?是每页显示多少条记录
pageNo是什么?显示第几页
java代码{
int pageNo = 2; // 页码是2
int pageSize = 10; // 每页显示10条
limit (pageNo - 1) * pageSize, pageSize
}
最后
以上就是想人陪心情为你收集整理的MySql的复习(六):Union和Limit的用法MySql的复习(六):Union和Limit的用法的全部内容,希望文章能够帮你解决MySql的复习(六):Union和Limit的用法MySql的复习(六):Union和Limit的用法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复