MySql nion与Limit查询介绍

来自:网络
时间:2022-12-27
阅读:
免费资源网 - https://freexyz.cn/
目录

1. union合并查询结果集

查询工作岗位是 MANAGER 和 SALESMAN 的员工?

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

MySql nion与Limit查询介绍

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

MySql nion与Limit查询介绍

mysql> select ename, job from emp where job = 'MANAGER' union select ename, job from emp where job = 'SALESMAN';

MySql nion与Limit查询介绍

union 的效率要高一些。

对于表的连接,每一次连接新表,则匹配的次数满足笛卡尔积,成倍的翻…

但是 union 可以减少匹配的次数。在减少匹配次数的情况下,还可以完成两个结果集的拼接。

a 连接 b 一个结果:10 * 10 --> 100

a 连接 c 一个结果:10 * 10 --> 100

使用 union 的话:100 + 100 --> 200

注意事项:

  • 使用 union 进行结果集合并,要求两个结果集的列数相同。
  • 两个结果的列的数据类型也要一致(mysql不要求一致)

2. limit分页查询

limit 作用:将查询结果集的一部分取出来。通常使用在分页查询当中。

按照薪资降序,取出排名在前5名的员工?

mysql> select ename, sal from emp order by sal desc limit 5;

MySql nion与Limit查询介绍

mysql> select ename, sal from emp order by sal desc limit 2, 3;

2:从第三个开始(下标从0开始)

3:三个数据

MySql nion与Limit查询介绍

注意:mysql 中 limit 在 order by 之后执行!!!

免费资源网 - https://freexyz.cn/
返回顶部
顶部