第3关:集合操作100

  • 任务描述
  • 相关知识
  • 编程要求
  • 测试说明

任务描述

本关任务:使用 集合操作解决实际问题

相关知识

1.集合并操作符

可转换为SQL

第3关:集合操作100_第1张图片

若R,S的属性名不同,可使用重命名使相应列名一致后进行并操作 例如:R(A,B,C) S(D,E,F) select A,B from R union select D as A, E as B from S 2.集合交操作

第3关:集合操作100_第2张图片

可直接转换为SQL select * from R intersect select * from S 若属性名不同可参照并操作的重命名实现交操作。 3.集合差操作 R-S 可转换为 Select * from R except Select * from S

编程要求

我们已经为你建好了数据库与数据表R,S,并添加了相应的数据内容。

第3关:集合操作100_第3张图片

  • 1.补全右侧代码片段中 第一题 下 Begin-End 区间的代码,找出所有的导师的姓名和性别

  • 2.补全右侧代码片段中 第二题 下 Begin-End 区间的代码,找出既是本科生导师又是硕士生导师的全部信息,包括id,name,sex

  • 3.补全右侧代码片段中 第三题 下 Begin-End 区间的代码,找出是本科生导师但不是硕士生导师的全部信息,包括id,name,sex

测试说明

测试过程:

  • 本关涉及到的测试文件是 step3_test.sh ,平台将运行用户补全的 step3.sql 文件,得到数据;

  • 将得到的数据与答案比较,判断代码是否正确。

  • USE test_wyy_db_guet
    Go
    
    SET NOCOUNT ON
    
    ---------- 第一题 ----------
    -- ********** Begin ********** --
     select name,sex from R union select name,sex from S;
    
    
    -- ********** End ********** --
    
    GO
    
    ---------- 第二题 ----------
    -- ********** Begin ********** --
      select * from R intersect select * from S ;
    
    
    -- ********** End ********** --
    
    GO 
    select *from R except select * from S;
    
    ---------- 第三题 ----------
    -- ********** Begin ********** --
    
    
    
    -- ********** End ********** --
    
    GO

你可能感兴趣的:(oracle,数据库)