oracle交集(Oracle的并集、交集、差集运算[亲测有效])

发布时间:2025-12-10 19:45:23 浏览次数:5

Oracle的并集、交集、差集运算[亲测有效]-oracle交集查询

Oracle的并集、交集、差集运算[亲测有效]Oracle中有并集、交集、差集的3种运算1.union:得到两个查询结果的并集,并且自动去掉重复行,不会排序。 unionall:得到两个查询结果的并集,不会去掉重复行,也不会排序 2.intersect:得到两个查询结果的交集,并且按照结果集的第一个列进行排序 3.minus:得到两个查询结果的减集,以第一列进行排序。例子:表A:t_form_table_a表B:t_form_table_b(1)select*f…

Oracle中有并集、交集、差集的3种运算
1. union : 得到两个查询结果的并集,并且自动去掉重复行,不会排序。
 union all: 得到两个查询结果的并集,不会去掉重复行,也不会排序
 2. intersect: 得到两个查询结果的交集,并且按照结果集的第一个列进行排序
 3. minus: 得到两个查询结果的减集,以第一列进行排序 。

例子:

表A:t_form_table_a

表B:t_form_table_b

(1)select * from t_form_table_a
union
select * from t_form_table_b

select * from t_form_table_a
union all
select * from t_form_table_b

(2)select * from t_form_table_a
intersect
select * from t_form_table_b

(3)select * from t_form_table_a
minus
select * from t_form_table_b

示例
表A{1,2,3,4,5,}
表B{4,5,6,7,8,}

select * from A minus select * from B;

结果:1,2,3。

select * from B minus select * from A;

结果为:6,7,8。

select * from A unionselect * from B;

结果为:1,2,3,4,5,6,7,8。

select * from A minus (select * from A minus select * from B);

结果为:4,5。

背景: 产品文件每天要查询后台数据 看是否成功发布 几乎每天都有产品漏发数据导致为成功发布

有的是销户 需要手动刷新后台数据处理 就比对几个交易日的未发布成功的交集 就是几天都没发布 逐个排查

两个sql有排序的情况下 执行报错 去掉order by 就执行成功了

需要做网站?需要网络推广?欢迎咨询客户经理 13272073477