sql 的MINUS指令的应用(只适用于oracle,别的数据库可以使用联合连接union join!比较少见!)

来源:互联网 发布:用友t6软件下载 编辑:程序博客网 时间:2024/06/08 13:48

MINUS 指令是运用在两个 SQL 语句上。它先找出第一个 SQL 语句所产生的结果,然后看这些结果有没有在第二个 SQL 语句的结果中。如果有的话,那这一笔资料就被去除,而不会在最后的结果中出现。如果第二个 SQL 语句所产生的结果并没有存在于第一个 SQL 语句所产生的结果内,那这笔资料就被抛弃。

MINUS 的语法如下:(翻译:减法

[SQL 语句 1]
MINUS
[SQL 语句 2];

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

Store_Information 表格

Store_NameSalesTxn_DateLos Angeles150005-Jan-1999San Diego25007-Jan-1999Los Angeles30008-Jan-1999Boston70008-Jan-1999

Internet Sales 表格

Txn_DateSales07-Jan-199925010-Jan-199953511-Jan-199932012-Jan-1999750

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

SELECT Txn_Date FROM Store_Information
MINUS
SELECT Txn_Date FROM Internet_Sales;

结果:

Txn_DateJan-05-1999Jan-08-1999

'Jan-05-1999', 'Jan-07-1999', 和 'Jan-08-1999' 是 "SELECT Txn_Date FROM Store_Information" 所产生的结果。在这里面,'Jan-07-1999' 是存在于 "SELECT Txn_Date FROM Internet_Sales" 所产生的结果中。因此 'Jan-07-1999' 并不在最后的结果中。

请注意,在 MINUS 指令下,不同的值只会被列出一次。 



转载自:http://www.1keydata.com/cn/sql/sql-minus.php

阅读全文
0 0
原创粉丝点击