oracle数据库做差集6,ORACLE查询二张表的差集 MINUS的用法

本文介绍了Oracle SQL中的MINUS指令用法,通过对比两个查询结果集,返回第一个集合中有而第二个集合中没有的数据记录。以具体的销售数据为例,展示了如何找出仅在实体店发生但未在网络渠道出现的销售日期。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle中的MINUS用法

MINUS 指令是运用在两个 SQL 语句上。它先找出第一个 SQL 语句所产生的结果,然后看这些结果有没有在第二个 SQL 语句的结果中。如果有

的话,那这一笔资料就被去除,而不会在最后的结果中出现。如果第二个 SQL 语句所产生的结果并没有存在于第一个 SQL 语句所产生的结果

内,那这笔资料就被抛弃。

MINUS 的语法如下:

[SQL 语句 1]

MINUS

[SQL 语句 2]

我们继续使用一样的例子:

Store_Information 表格

store_name  Sales  Date

Los Angeles  $1500  Jan-05-1999

San Diego  $250  Jan-07-1999

Los Angeles  $300  Jan-08-1999

Boston  $700  Jan-08-1999

Internet Sales 表格 Date  Sales

Jan-07-1999  $250

Jan-10-1999  $535

Jan-11-1999  $320

Jan-12-1999  $750

而我们要知道有哪几天是有店面营业额而没有网络营业额的。要达到这个目的,我们用以下的 SQL 语句:

SELECT Date FROM Store_Information

MINUS

SELECT Date FROM Internet_Sales

结果:

Date

Jan-05-1999

Jan-08-1999

"Jan-05-1999", "Jan-07-1999", and "Jan-08-1999" 是 "SELECT Date FROM Store_Information" 所产生的结果。在这里面,"Jan-07-1999"

是存在于 "SELECT Date FROM Internet_Sales" 所产生的结果中。因此 "Jan-07-1999" 并不在最后的结果中。 请注意,在 MINUS 指令下,不同的值只会被列出一次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值