查询指令id = 1的结果是错误的或真实的

时间:2016-11-29 15:44:55

标签: sql-server-2008 database-design relationship erd entity-relationship-model

问题

如何通过SQL查询从表CourseClass获取讲师的日程安排?

课程表与讲师表有很多关系,并生成了讲师课程表。

课程表与Class表有很多关系,并生成了CourseClass表。 和我的图表如下:

ERD database design digram

我尝试的是

SELECT     dbo.Class.*, dbo.Course_Class.*, dbo.Course.*, dbo.Inst_Course.*, dbo.Instructor.*
FROM         dbo.Class INNER JOIN
                      dbo.Course_Class ON dbo.Class.ClassID = dbo.Course_Class.ClassID INNER JOIN
                      dbo.Course ON dbo.Course_Class.CourseID = dbo.Course.CourseID INNER JOIN
                      dbo.Inst_Course ON dbo.Course.CourseID = dbo.Inst_Course.CourseID INNER JOIN
                      dbo.Instructor ON dbo.Inst_Course.InstID = dbo.Instructor.InstructorID
WHERE     (dbo.Inst_Course.InstID = 1)

我得到4行作为查询结果我发现它是错误的必须是2行。 我的结果是错误的还是真的?

Result of query is wrong or true

1 个答案:

答案 0 :(得分:0)

您的结果是正确的。 1)结果中没有任何重复的行。 2)您可以通过查看源表来仔细检查这一点。 Inst_Course(1和2)中的教师1有2个课程ID,对应于Course_Class中的4行(参见CourseID列,有3" 1"时隙和1" 2"时间段。)