解釋
- “minus”直接翻譯為中文是“減”的意思,在Oracle中也是用來做減法操作的,只不過它不是傳統意義上對數字的減法,而是對查詢結果集的減法。A minus B就意味着將結果集A去除結果集B中所包含的所有記錄后的結果,即在A中存在,而在B中不存在的記錄。
- racle的minus是按列進行比較的,所以A能夠minus B的前提條件是結果集A和結果集B需要有相同的列數,且相同列索引的列具有相同的數據類型。
- Oracle會對minus后的結果集進行去重,即如果A中原本多條相同的記錄數在進行A minus B后將會只剩一條對應的記錄。
用法
- SQL如下
select 字段名稱 from 表1 minus select 字段名稱 from 表2;
- Next
示例
- 測試表table_one數據如下
- 測試表table_two數據如下
- 使用SQL查詢表table_one中存在而表table_two中不存在的數據,SQL如下
Select name from table_one minus select name from table_two;
- 查詢結果如下
- Next