我的数据库是这样的-
一所大学有多个课程。课程进一步分为多个流。一个流有多个主题,而主题又具有多个主题。最后,一个主题、流、主题和主题有多个注释。
课程 -> 信息流 -> 主题 -> 主题 -> 笔记
我想编写一个选择查询来鸟瞰给定课程中的笔记数量。我要这个 -
MBA(总笔记数 - 5) - 课程
HR(总笔记数 - 5) - 流
Sub A(总笔记数 - 5) - 主题
主题 1(总注释数 - 2) - 主题
主题 2(总注释数 - 3)
在上面的示例中,Sub A 和 Sub B 总共有 5 个音符,这些音符被显示为 HR。
请帮我写这个查询。查询需要非常快。
我正在附上我的脚本。我可以考虑编写多个子查询,但我认为这不是一种优化的方法。
select MC.CourseName,MS.StreamName,MSub.SubjectName,MT.TopicName,MN.NoteName
from Master_Course MC
JOIN Master_Stream MS ON MC.CourseId = MS.CourseId
JOIN Master_Subject MSub ON MS.StreamId = MSub.StreamId
JOIN Master_Topics MT ON MSub.SubjectId = MT.SubjectId
JOIN Master_Notes MN ON MT.TopicId = MN.TopicId