在OceanBase中,集合操作用于对多个查询结果集进行组合、比较和筛选。常见的集合操作包括 UNION、UNION ALL、INTERSECT 和 EXCEPT(或 MINUS)。

以下是OceanBase中集合操作的基本用法:

UNION:

UNION 操作用于合并两个或多个查询的结果集,并去除重复的行。
SELECT column1 FROM table1
UNION
SELECT column1 FROM table2;

UNION ALL:

UNION ALL 也用于合并两个或多个查询的结果集,但不去除重复的行。
SELECT column1 FROM table1
UNION ALL
SELECT column1 FROM table2;

INTERSECT:

INTERSECT 操作返回两个查询的交集,即同时存在于两个结果集中的行。
SELECT column1 FROM table1
INTERSECT
SELECT column1 FROM table2;

EXCEPT(或 MINUS):

EXCEPT 操作返回属于第一个查询结果集但不属于第二个查询结果集的行。
SELECT column1 FROM table1
EXCEPT
SELECT column1 FROM table2;

或者使用 MINUS:
SELECT column1 FROM table1
MINUS
SELECT column1 FROM table2;

这些集合操作允许在不同的查询结果集之间执行组合和比较操作。注意,集合操作要求涉及的查询的列数和数据类型必须一致。在使用集合操作时,还需要考虑性能和结果集的去重需求。


转载请注明出处:http://www.zyzy.cn/article/detail/11496/OceanBase