zl程序教程

您现在的位置是:首页 >  其他

当前栏目

UNION搜索与UNION ALL的区别

搜索 区别 all union
2023-09-11 14:20:02 时间

1.在数据库中为了将两条SQL语句合并在一起,通常会用到数据库函数:UNION和UNION ALL

注意:将两条SQL语句合并在一起,SQL语句中字段的数据类型一定要一致,不然会报错;

2. UNION ALL 函数

 将员工表EMP部门编号>=20,查询出来,如下

SELECT * FROM EMP E WHERE E.DEPTNO >= 20;

将员工表EMP部门编号>=30,查询出来,如下

SELECT * FROM EMP E WHERE E.DEPTNO >= 30;

将两条语句合并在一起

SELECT * FROM EMP E WHERE E.DEPTNO >= 20
UNION ALL
SELECT * FROM EMP E WHERE E.DEPTNO >= 30;

3.  UNION 函数

SELECT * FROM EMP E WHERE E.DEPTNO >= 20
UNION
SELECT * FROM EMP E WHERE E.DEPTNO >= 30;


4. UNION ALL 和 UNION 区别

4.1 UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。

4.2 对重复结果的处理:UNION在进行表链接后会筛选掉重复的记录,Union All不会去除重复记录。

4.3 对排序的处理:Union将会按照字段的顺序进行排序;UNION ALL只是简单的将两个结果合并后就返回。

4.4 从效率上说,UNION ALL 要比UNION快很多,所以,如果可以确认合并的两个结果集中不包含重复数据且不需要排序时的话,那么就使用UNION ALL。