【发布时间】:2015-04-05 05:25:17
【问题描述】:
通常,这对我来说不是问题,但是 1. 我的老师从未教过我们如何像这样和 2 加入三张桌子。这周的作业甚至都没有涉及。但是因为这些数据库不是我们平时使用的Oracle接口数据库,所以我连试错都没有办法。
我有三张桌子。内容对问题并不重要。 第一个表是 STUDENTS,包含 LAST_NAME、SID 和 MID 列(此处的两个 MID 单元格具有 NULL 值)。 第二个表是 COURSES,包含 COURSES 列(不知道为什么设计这个问题的人决定将其命名为与表相同的名称)和 CID(我假设这是一个主键) 第三个表是 ENROLLED,包含 SID 和 CID 列。
我被问到以下问题 “使用上面显示的三个表格来回答以下问题: 一种。您将使用哪种连接来连接所有三个表? 编写将产生所需结果的语法。 湾。命名两个可用于从自然连接中检索数据的表。 编写能产生所需结果的语法。”
我坚持这个。到目前为止,互联网并没有太大的帮助,甚至甲骨文的资料也没有。我们了解了加入,但我们从未加入超过两个表。任何帮助将不胜感激。
【问题讨论】:
-
没什么特别的。只需添加更多连接子句。当您决定为每个表使用哪种类型的连接时,奇迹就会发生。
-
没错。这是从未涉及过的新领域,因为我的导师实际上并没有教我们任何东西。所以我不知道要使用什么连接。
-
你可以在 w3schools 上学习,因为链接是 w3schools.com/sql
-
我知道如何执行基本的 SQL,但是当至少没有包含这些精确表的虚拟数据库时,我无法弄清楚。我必须实际这样做,当实际数据库中不存在表时,我无法神奇地编写语法。有人能告诉我如何解决这个问题吗?
-
所以你要求我们写一个查询,因为你没有一个数据库来测试你自己的工作?连接两个以上的表与连接一个或两个表的工作方式相同。如果你想真正体验一下,可以在本地安装一个Oracle个人版,或者使用SQLFiddle之类的工具。