EXCEPT 语法用于组合两个 SELECT 语句的分析结果,仅返回第一个结果集中存在但第二个结果集中不存在的行。
语法格式
* | SELECT [列名(KEY)] FROM table1 EXCEPT SELECT [列名(KEY)] FROM table2
其中每个 SELECT 语句的分析结果必须拥有相同数量的列和相同的字段类型,才能进行组合。
SELECT 结果中包含重复行时,EXCEPT 仅保留其中一行。
语法示例
将两个只有一列的表组合在一起,获取表一中存在但表二中不存在的行。其中:第一个表有两行,值分别为42、13;第二个表只有一行,值为13。
* | SELECT * FROM (VALUES 42,13)EXCEPTSELECT * FROM (VALUES 13)
返回结果: