在Spark中,我们可以使用类似于传统数据库中的集合操作符来操作数据集。以下是一些常用的集合操作符:
1. 并集操作:
UNION
:返回两个数据集的所有行,并去除重复行。UNION ALL
:返回两个数据集的所有行,包括重复行。
示例:
-- 创建一个只包含20号部门员工信息的表
CREATE TABLE emp20 AS SELECT * FROM emp WHERE deptno=20;
-- 使用UNION操作符
SELECT * FROM emp UNION SELECT * FROM emp20;
-- 使用UNION ALL操作符
SELECT * FROM emp UNION ALL SELECT * FROM emp20;
2. 交集操作:
INTERSECT
:返回两个数据集中都存在的行。
示例:
SELECT * FROM emp INTERSECT SELECT * FROM emp20;
3. 差集操作:
MINUS
:返回第一个数据集中存在而第二个数据集中不存在的行。请注意,MINUS
操作符对操作顺序敏感。
示例:
SELECT * FROM emp MINUS SELECT * FROM emp20;
暂无评论