德语ER图对应课程查询需求转SQL SELECT语句求助
德语ER图对应SQL查询实现
SELECT 前置课程表.Titel AS 前置课程标题, 后置课程表.Titel AS 后置课程标题 FROM Professor 教授表 -- 关联拿到苏格拉底讲授的所有课程(即需求中的后置课程) INNER JOIN Vorlesung 后置课程表 ON 教授表.ProfessorID = 后置课程表.任课教授ID -- 关联前置课程关系表,过滤出有前置课程的后置课程 INNER JOIN Voraussetzung 前置课程关联表 ON 后置课程表.课程ID = 前置课程关联表.后置课程ID -- 关联拿到对应前置课程的信息 INNER JOIN Vorlesung 前置课程表 ON 前置课程关联表.前置课程ID = 前置课程表.课程ID WHERE 教授表.Name = 'Sokrates' -- 按后置课程标题升序排序 ORDER BY 后置课程表.Titel ASC
注:上述表名、核心字段名均采用德语课程ER图的通用命名,和你提供的ER图命名规则一致,如果实际字段命名有差异,直接对应替换即可,核心关联逻辑无需调整:
- 先过滤出苏格拉底教授讲授的全部课程
- 通过前置课程关联表筛选掉无前置课的课程
- 两次关联课程表分别取前置、后置课程的标题
- 按后置课程标题升序输出结果
内容的提问来源于stack exchange,提问作者Parisa Ebrahimi
相关产品推荐
相关产品推荐

