设置操作
适用于:砖的SQL砖运行时
结合了两个子查询到一个单独的一个。砖SQL支持三种类型的集合操作符:
除了
相交
联盟
语法
subquery1{{联盟(所有|截然不同的]|相交(所有|截然不同的]|除了(所有|截然不同的]}subquery2}(…]}
subquery1,subquery2
任意两个
子查询
条款规定选择。子查询都必须有相同数量的列和分享至少为每个各自的常见类型列。联盟(所有|不同)
返回的结果
subquery1+的行的
subquery2”。如果
所有
指定重复的行。如果
截然不同的
指定结果不包含任何重复的行。这是默认的。相交(所有|不同)
返回的行集的子查询。
如果
所有
指定连续出现多次的subquery1
以及在子查询
会返回很多次了。如果
截然不同的
指定结果不包含重复的行。这是默认的。除了(所有|不同)
返回行
subquery1
不是在subquery2
。如果
所有
指定,每一行在吗subquery2
将删除一个可能多个匹配呢subquery1
。如果
截然不同的
是指定的,除去重复的行subquery1
在应用操作之前,所有的比赛都删除,结果就没有重复的行(匹配或无与伦比的)。这是默认的。您可以指定
-
作为语法的选择除了
。
当链接设置操作相交
优先级高于联盟
和除了
。
每个结果的类型列是最常见的一种相应的列subquery1
和subquery2
。
例子
——使用number1和科学表来演示这个页面设置运营商。>创建临时视图number1(c)作为值(3),(1),(2),(2),(3),(4);>创建临时视图科学(c)作为值(5),(1),(1),(2);>选择c从number1除了选择c从科学;34>选择c从number1-选择c从科学;34>选择c从number1除了所有(选择c从科学);334>选择c从number1-所有(选择c从科学);334>(选择c从number1)相交(选择c从科学);12>(选择c从number1)相交截然不同的(选择c从科学);12>(选择c从number1)相交所有(选择c从科学);122>(选择c从number1)联盟(选择c从科学);13542>(选择c从number1)联盟截然不同的(选择c从科学);13542>选择c从number1联盟所有(选择c从科学);3122345112