1. 程式人生 > >SQL中 EXCEPT和INTERSECT用法

SQL中 EXCEPT和INTERSECT用法

EXCEPT 返回兩個結果集的差(即從左查詢中返回右查詢沒有找到的所有非重複值)。

sql="(selectA) EXCEPT  (select B)";

INTERSECT 返回 兩個結果集的交集(即兩個查詢都返回的所有非重複值)。

UNION返回兩個結果集的並集。

注意:

  • (1)所有查詢中的列數和列的順序必須相同
  • (2)比較的兩個查詢結果集中的列資料型別可以不同但必須相容
  • (3)比較的兩個查詢結果集中不能包含不可比較的資料型別(xml、text、ntext、image 或非二進位制 CLR 使用者定義型別)的列。
  • (4)返回的結果集的列名與運算元左側的查詢返回的列名相同。ORDER BY 子句中的列名或別名必須引用左側查詢返回的列名。
  • (5)不能與 COMPUTE 和 COMPUTE BY 子句一起使用。
  • (6)通過比較行來確定非重複值時,兩個 NULL 值被視為相等。(EXCEPT 或 INTERSECT 返回的結果集中的任何列的為空性與運算元左側的查詢返回的對應列的為空性相同。)