minus 運算符在 sql 中用于返回第一個表中存在但在第二個表中不存在的行。它的語法為:select from table1 minus select from table2。它與 except 運算符相似,但僅返回第一個表中存在的、第二個表中不存在的行。
SQL 中的 MINUS
MINUS 運算符是 SQL 中的一個集運算符,用于從兩個表中返回行,其中在第一個表中存在但在第二個表中不存在。
語法
<code>SELECT * FROM table1 MINUS SELECT * FROM table2;</code>
登錄后復制
功能
MINUS 運算符會從 table1
中選擇所有不在 table2
中的行。結果表只包含在 table1
中獨特的行。
示例
假設我們有兩個表:員工
和 離職員工
。我們需要查找仍然在職的員工:
<code>SELECT * FROM 員工 MINUS SELECT * FROM 離職員工;</code>
登錄后復制
結果表將僅包含仍在職的員工記錄。
與 EXCEPT 的區別
MINUS 運算符與 EXCEPT 運算符類似,但略有不同:
MINUS 僅返回在第一個表中存在的、在第二個表中不存在的行。
EXCEPT 同時返回在第一個表中存在、在第二個表中不存在的行,以及在第二個表中存在、在第一個表中不存在的行。
注意事項
MINUS 運算符只能在兩張表具有相同的列和數據類型時使用。
結果表中的列順序與 table1
中的列順序相同。
NULL 值被視為空值,因此它們不會影響 MINUS 運算符的結果。