第2关:多表查询


任务描述

本关任务:

  • 使用join操作符实现多表查询。
join操作符

1.笛卡尔积,RXS

可直接转换为SQL语句

2.等值连接,记作

可直接转换为SQL语句

3.自然连接,记作

可转换为SQL语句

4.左外连接和右外连接的表示方法及转换为SQL

注意若多个关系有同名属性,则用 关系名.属性名 指出重名属性

连接也可以与投影,选择等结合使用。

编程要求
  • 1.补全右侧代码片段中 第一题 下 Begin-End 区间的代码,查询选修了'2'号课程的学生的学号;
  • 2.补全右侧代码片段中 第二题 下 Begin-End 区间的代码,查询Liyong选修的课程成绩。
  • 3.补全右侧代码片段中 第三题 下 Begin-End 区间的代码,查询选修课程名称Math的学生学号。

使用的表结构: Student(Sno, Sname, Ssex, Sage, Sdept) Course(Cno, Cname,Ccredit) SC(Sno, Cno, Grade)

测试说明

测试过程:

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

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

sql 复制代码
USE test_wyy_db_guet
Go

SET NOCOUNT ON


-- ********** Begin ********** --
---------- 第一题----------
select sno from sc where cno='2';
-- ********** End ********** --
GO


-- ********** Begin ********** --
---------- 第二题----------
select grade from sc join student on student.sno=sc.sno where sname='LiYong';
-- ********** End ********** --
GO

-- ********** Begin ********** --
---------- 第三题----------
select distinct sc.sno from sc join course on  course.cno=sc.cno and cname='Math';
-- ********** End ********** --
GO
相关推荐
weelinking1 天前
【产品】12_接入数据库——让数据永久保存
jvm·数据库·python·react.js·数据挖掘·前端框架·产品经理
稳联技术老娜1 天前
DeviceNet主站怎么连接西门子PLC,Profinet网关配置手册(那智机器人)
服务器·网络·数据库
这个DBA有点耶1 天前
云上运维新挑战:当数据库不再“看得见摸得着”
数据库·sql·程序人生·云原生·运维开发·学习方法·dba
AskHarries1 天前
系统提示词、开发者指令和用户输入的优先级
java·前端·数据库
消失在人海中1 天前
oracle 数据库多表关联查询
服务器·数据库·oracle
九皇叔叔1 天前
PostgreSQL/openGauss pg_stats 视图从入门到精通:统计信息、执行计划与慢 SQL 优化实战
数据库·sql·postgresql
南极企鹅1 天前
MySQL间隙锁&临键锁
数据库·sql·mysql
TDengine (老段)1 天前
TDengine 压缩编码机制 — 双层压缩架构与类型特化算法
大数据·数据库·物联网·算法·时序数据库·tdengine·涛思数据
苏渡苇1 天前
Redis 持久化——RDB 快照 vs AOF 日志
数据库·redis·缓存·redis持久化·aof vs rdb
l1t1 天前
DeepSeek总结的使用 PEG 实现运行时可扩展的 SQL 解析器
数据库·sql