SQL MINUS運算符簡介
MINUS在包含SQL標準的三個操作之一UNION,INTERSECT和MINUS。
MINUS比較兩個查詢的結果,并返回第一個查詢中不是由第二個查詢輸出的不同行。
MINUS 指令是運用在兩個 SQL 語句上。它先找出第一個 SQL 語句所產生的結果,然后看這些結果有沒有在第二個 SQL 語句的結果中。如果有的話,那這一筆資料就被去除,而不會在最后的結果中出現。如果第二個 SQL 語句所產生的結果并沒有存在于第一個 SQL 語句所產生的結果內,那這筆資料就被拋棄。
以下說明了MINUS運算符的語法:
1 2 3 |
|
使用MINUS運算符的查詢的基本規則如下:
數量和兩列的順序column_list_1和column_list_2必須相同。
兩個查詢中相應列的數據類型必須兼容。
假設我們有兩個表t1并t2具有以下結構和數據:
1 2 3 4 5 6 7 8 9 10 |
|
以下查詢返回t1表的查詢中的不同值,這些值在表的查詢結果中找不到t2。
1 2 3 |
|
MySQL MINUS運算符
不幸的是,MySQL不支持MINUS運算符。但是,您可以使用MySQL JOIN來模擬它。
要模擬MINUS兩個查詢,請使用以下語法:
1 2 3 4 5 6 7 |
|
例如,以下查詢使用LEFT JOIN子句返回與MINUS運算符相同的結果:
1 2 3 4 5 6 7 8 |
|