我是靠谱客的博主 想人陪心情,最近开发中收集的这篇文章主要介绍MySql的复习(六):Union和Limit的用法MySql的复习(六):Union和Limit的用法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MySql的复习(六):Union和Limit的用法

union

union可以合并集合(相加)

  1. 采用or
select ename,job from emp where job = 'MANAGER' or job = 'SALESMAN';

image-20220226183858420

  1. 查询job包含MANAGER和包含SALESMAN的员工
select * from emp where job in('MANAGER', 'SALESMAN');
  1. 采用union来合并
select * from emp where job='MANAGER'
union
select * from emp where job='SALESMAN';

image-20220226183439492

拼接的数据必须两两相对应。不能一张表是一个数据,另一张表是两个数据,这样无法拼接!

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;

image-20220226201429148

从第二条开始取两条数据

select * from emp limit 1,2;

image-20220226210852116

取得薪水最高的前5名

select * from emp e order by e.sal desc limit 5;

找到工资排在第四到第九位的员工

select ename,sal from emp order by sal desc limit 3,6;

关于分页

  1. limit是sql语句最后执行的一个环节:
	select		5
		...
	from			1
		...		
	where			2
		...	
	group by		3
		...
	having		4
		...
	order by		6
		...
	limit			7
		...;
  1. 通用的标准分页
每页显示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的用法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(145)

评论列表共有 0 条评论

立即
投稿
返回
顶部