关于gaussdb:GaussDB中的SET操作符用法详解
关系数据库中提供了一个对于汇合的运算符SET操作符,其中包含以下操作: ●UNION/UNIONALL并集 ●INTERSECT交加 ●MINUS差集 一、操作符解说 1、UNION 合并两个查问后果集,隐式DINSTINCT,删除反复行(即取汇合并集) –合并两个提取表/派生表(derivedtable),返回后果为:[a,b,c,d,e] SELECT FC FROM (VALUES(‘a’),(‘b’),(‘c’),(‘e’)) Table1 (FC)UNIONSELECT FC FROM (VALUES(‘a’),(‘b’),(‘c’),(‘d’)) Table2 (FC) 2、EXCEPT/MINUS 返回呈现在第一个后果集但不呈现在第二个后果集中的所有行(即两汇合相减) –返回后果为:[e] SELECT FC FROM (VALUES(‘a’),(‘b’),(‘c’),(‘e’)) Table1 (FC)EXCEPTSELECT FC FROM (VALUES(‘a’),(‘b’),(‘c’),(‘d’)) Table2 (FC) 3、INTERSECT 返回第一个查问后果集和第二个查问后果集共有的局部(即取汇合交加) –返回后果为:[a,b,c] SELECT FC FROM (VALUES(‘a’),(‘b’),(‘c’),(‘e’)) Table1 (FC)INTERSECTSELECT FC FROM (VALUES(‘a’),(‘b’),(‘c’),(‘d’)) Table2 (FC) 二、汇合运算的应用场景 1、应用UNION代替Where子句中的OR,查问速度更快 2、应用EXCEPT和INTERSECT,过滤出列表中不存在/存在于数据库