集合运算就是对满足一定规则的记录进行的加减等四则运算;
使用UNION(并集),INTERSECT(交集),EXCEPT(差集)等集合运算符来进行集合运算;
集合运算符可以去除重复行;
如果希望集合运算符保留重复行,就需要使用ALL选项。
注意事项
- 作为运算对象的列数必须相同
- 作为运算对象的记录中列的数据必须一致
- 可以使用任何SELECT语句,但ORDER BY字句只能在最后使用一次
SELECT
product_id,
product_name
FROM
Product
WHERE
product_type = '厨房用具'
UNION
SELECT
product_id,
product_name
FROM
Product2
WHERE
product_type = '厨房用具'
ORDER BY
product_id;
- EXCEPT 有一点与 UNION 和 INTERSECT 不同,需要注意一下。 那就是在减法运算中减数和被减数的位置不同,所得到的结果也不相同。
SELECT
product_id,
product_name
FROM
Product EXCEPT SELECT
product_id,
product_name
FROM
Product2
ORDER BY
product_id;
网友评论