在项目里看到别人写的minus。尽管之前有看到别人写过minus,自己也看过minus,但从没写过minus关键字的博客,于是写了这篇初步认识。
Oracle Minus关键字
SQL中的MINUS关键字
SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果中。如果有的话,那这一笔记录就被去除,而不会在最后的结果中出现。如果第二个SQL语句所产生的结果并没有存在于第一个SQL语句所产生的结果内,那这笔资料就被抛弃,其语法如下:
[SQL Segment 1]
MINUS
[SQL Segment 2]
即返回[SQL Segment 1]中与[SQL Segment 2]不重复的数据。
示列:
//test1表
NAME SEX
---------- ----------
test female
test1 female
test1 female
test11 female
test111 female
//test2表
NAME SEX
---------- ----------
test female
test2 female
test2 female
test22 female
test222 female
select * from test1 minus select * from test2;
结果:
NAME SEX
---------- ----------
test1 female
test11 female
test111 female
select * from test2 minus select * from test1;
结果:
NAME SEX
---------- ----------
test2 female
test22 female
test222 female
结论:Minus返回的总是左边表中的数据,它返回的是差集。注意:minus有剃重作用