解释 DBMS 中的集合运算符
并集、交集、减号和存在等运算符对关系进行操作。对应关系代数U、∩和-。参与操作的关系必须具有相同的属性集。
集合运算符的语法如下 -
<query1><set operator><query2>
现在,让我们了解数据库管理系统(DBMS)中的集合运算符。
UNION - 它返回一个表,其中包含出现在 <query1> 的结果或 <query2> 的结果中的所有行
例如,
select ename from emp where job=’mamager’ UNION select ename from emp where job=’analyst’;
UNION ALL - 它返回任一查询选择的所有行,包括所有重复项。
例如,
select salary from emp where job=’manager’ UNION ALL select salary fro, emp where job=’analyst’);
INTERSECT - 它返回出现在结果 <query1> 和 <query2> 中的所有行
例如,
select * from orderList1 INTERSECT select * from orderList2;
INTERSECT ALL - 与 INTERSECT 相同,返回两个查询选择的所有不同行。
例如,
select * from orderList1 INTERSECT ALL select * from orderList2;
MINUS - 它返回那些出现在 <query1> 结果中但不在 <query2> 结果中的行
例如,
select * from(select salary from emp where job=’manager’ MINUS select salary from emp where job=’CEO’);
示例
考虑下面给出的分步查询 -
第1步
Create table T1(regno number(10), branch varchar2(10));
输出如下:表已创建。
第2步
insert into T1 values(100,'CSE');insert into T1 values(101,'CSE');
insert into T1 values(102,'CSE');
insert into T1 values(103,'CSE');
insert into T1 values(104,'CSE');
输出如下:插入了 5 行。
第 3 步
create table T2 (regno number(10), branch varchar2(10));
输出如下: 表已创建。
第四步
insert into T2 values(101,'CSE');insert into T2 values(102,'CSE');
insert into T2 values(103,'CSE');
输出如下:插入了 3 行。
第 5 步
select * from T1;
输出
您将获得以下输出 -
100|CSE101|CSE
102|CSE
103|CSE
104|CSE
第 6 步
select * from T2;
输出
您将获得以下输出 -
101|CSE102|CSE
103|CSE
集合运算符的应用
现在在上面创建的两个表上应用集合运算符。
使用集合运算符的语法如下 -
select coulmnname(s) from tablename1 operatorname select columnname(s) from table2;
联盟
下面给出的是使用联合集合运算符的命令 -
select regno from T1 UNION select regno from T2;
输出
您将获得以下输出 -
100101
102
103
104
相交
下面给出的是使用 Intersect 集合运算符的命令 -
select regno from T1 INTERSECT select regno from T2;
输出
您将获得以下输出 -
101102
103
减
下面给出的是使用减集运算符的命令 -
select regno from T1 MINUS select regno from T2;
输出
您将获得以下输出 -
100104
以上是 解释 DBMS 中的集合运算符 的全部内容, 来源链接: utcz.com/z/327605.html