union all用法
union all用法举例如下:
SELECT * FROM
(SELECT top 1 left(convert(varchar(100),RECEIVE_TIME,108 ),5) receiveTime, '0' restoreTime,unit_code,unit_name
FROM T_FILE_RECEIVE_RECORD WHERE UNIT_CODE = '123123' and convert(char(100),RECEIVE_TIME,23)='2018-10-06' ORDER BY RECEIVE_TIME DESC
) table1
UNION ALL
SELECT * FROM
(SELECT top 1 '0' receiveTime, left(convert(varchar(100),RESTORE_TIME,108 ),5) restoreTime,unit_code,unit_name
FROM T_FILE_RESTORE_RECORD WHERE UNIT_CODE = '123123' and convert(char(100),restore_time,23)='2018-10-06' ORDER BY restore_time DESC
) table2
扩展资料:
使用UNION(或者UNION ALL)语句时,如果UNION的两个结果集在单独排序后再拼接,则他们的ORDER BY是失效的。如果我们要进行排序有以下两种方法:
将它们作为子查询再ORDER BY查询一次;在第一个结果集中不使用排序,且不用括号分隔,而在第二个结果集后使用ORDER BY。
参考资料来源:
union all 操作符用于合并两个或多个 SELECT 语句的结果集,并且不做踢重操作。
用法举例如下:
1、创建测试表,
create table test_uni_a(id varchar2(20),remark varchar2(20));
create table test_uni_b(id varchar2(20),remark varchar2(20));
2、插入测试数据;
insert into test_uni_a values('123', 'abc');
insert into test_uni_a values('456', 'efg');
insert into test_uni_b values('789', 'ABC');
insert into test_uni_b values('000', 'EFG');
commit;
3、查询表中全量数据;select t.*, rowid from test_uni_a t;
4、编写语句,使用UNION ALL将两表联合;
select * from test_uni_a a
union all
select * from test_uni_b b
扩展资料
1、UNION ALL操作符用于合并两个或多个 SELECT 语句的结果集。UNION ALL内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
2、UNION与UNION ALL区别
1)、Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
2)、Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
参考资料