博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySql中的数据查询语言(DQL)五:union和limit
阅读量:3967 次
发布时间:2019-05-24

本文共 1721 字,大约阅读时间需要 5 分钟。

1、union (可以将查询结果集相加)

合并结果集的时候,需要查询字段对应个数相同。在Oracle中更严格,不但要求个数相同,而且还要求类型对应相同。

举例:

案例:找出工作岗位是SALESMAN和MANAGER的员工?
第一种:or

select ename,job from emp where job = 'MANAGER' or job = 'SALESMAN';

第二种:in

select ename,job from emp where job in('MANAGER','SALESMAN');

第三种:union

select ename,job from emp where job = 'MANAGER'unionselect ename,job from emp where job = 'SALESMAN';

两张不相干的表中的数据拼接在一起显示?

select ename from empunionselect dname from dept;

±-----------+

| ename |
±-----------+
| SMITH |
| ALLEN |
| WARD |
| JONES |
| MARTIN |
| BLAKE |
| CLARK |
| SCOTT |
| KING |
| TURNER |
| ADAMS |
| JAMES |
| FORD |
| MILLER |
| ACCOUNTING |
| RESEARCH |
| SALES |
| OPERATIONS |
±-----------+

mysql> select ename,sal from emp    -> union    -> select dname from dept;//ERROR 1222 (21000): The used SELECT statements have a different number of columns

2.limit

limit 的使用(重点中的重点,以后分页查询全靠它了。)

1、limit是mysql特有的,其他数据库中没有,不通用。(Oracle中有一个相同的机制,叫做rownum)

2、limit取结果集中的部分数据,这是它的作用。
3、语法机制:

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;

4.limit是sql语句最后执行的一个环节:

  • select		5  ...  from			1  	...		  where			2  ...	  group by		3  ...  having		4  ...  order by		6  ...  limit			7  ...;

举例:

案例:找出工资排名在第4到第9名的员工?

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

5、通用的标准分页sql?

每页显示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}

转载地址:http://fxuki.baihongyu.com/

你可能感兴趣的文章
自定义dialog的布局样式
查看>>
android 之输入法
查看>>
Android4.0之后添加虚拟按键方法
查看>>
将自定义输入法设置为系统默认输入法
查看>>
Android Studio大课堂 - 6.2.打包 - 友盟多渠道包示例
查看>>
实用的欢迎页开源库 AppIntro
查看>>
Windows使用VNC viewer访问Ubuntu 14.04远程桌面的简单方法
查看>>
Android编译大全(六)
查看>>
TVS测试波形比较,让您更懂TVS
查看>>
yum安装对于下载总是失败的rpm包如何处理
查看>>
快速由PCI迁移到PCIe
查看>>
CCD和CMOS图像传感器的快门
查看>>
视频跟踪算法
查看>>
图像处理技术在视频监视中的应用
查看>>
DM8168 HDVPSS中的显示输出
查看>>
光电系统中的视频处理技术
查看>>
NRZ NRZI及扰码等串行编码技术的基本概念
查看>>
ADV7604介绍(一)
查看>>
无人机光电系统图像处理模块
查看>>
VP6802高清视频处理模块
查看>>