【问题标题】:How to retrieve students data based on teachers ID如何根据教师ID检索学生数据
【发布时间】:2019-07-04 18:20:13
【问题描述】:

根据一个简单的场景ER图如下。

在此基础上,我开发了一个数据库映射如下。

在那里,橙色列显示表的主键,黄色列显示表的外键。这个映射正确吗?现在我的问题是我需要检索从某个老师那里学习的学生数据,这意味着需要检索一些从他/她那里学习的老师的学生。

【问题讨论】:

  • 向我们展示您迄今为止的尝试?
  • @PSK 先生,我是数据库新手,我不知道要编写联接查询来执行此操作。请帮助我

标签: sql database mapping entity-relationship


【解决方案1】:

您需要了解如何使用不同类型的可用 JOIN 来连接表。

对于您的场景,请尝试如下操作,它将为您提供学生和教师映射。

select s.*
tbl_student s
inner join tbl_Course_Subjects tcs on s.Course_Id= tcs.Course_Id
inner join tbl_Subjects_Teacher tst on tst.SubjectId=tcs.Subject_Id
inner join tbl_Teacher t on t.Teacher_Id=tst.Teacher_Id
where t.Teacher_Id = @SomeTeacherId

【讨论】:

  • 非常感谢先生 :) 你能解释一下这个映射是否正确?我需要对此进行规范化吗?
  • 根据 ERD,我的设计看起来不错。
猜你喜欢
  • 1970-01-01
  • 2011-12-15
  • 1970-01-01
  • 1970-01-01
  • 2020-08-19
  • 1970-01-01
  • 2021-02-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多