Sql server 如何使用连接获得多个重复的连接?

Sql server 如何使用连接获得多个重复的连接?,sql-server,tsql,join,merge,sql-server-2012,Sql Server,Tsql,Join,Merge,Sql Server 2012,我有一个具有以下结构的临时表: StudentID VALUE 1 5 2 NULL 并需要将其值映射到下表: StudentID DEPT 1 1 1 2 2 3 2 4 所以输出应该是这样的: StudentID DEPT VALUE 1 1 5 1 2 5 2 3

我有一个具有以下结构的临时表:

 StudentID  VALUE
   1          5
   2          NULL
并需要将其值映射到下表:

 StudentID  DEPT
    1        1
    1        2
    2        3 
    2        4
所以输出应该是这样的:

StudentID  DEPT VALUE
  1        1     5
  1        2     5
  2        3     NULL
  2        4     NULL
SELECT S.StudentId, S.Dept, V.Value
FROM Student AS S
JOIN #TEMP AS V
  ON V.StudentId = S.StudentId
ORDER BY V.StudentId
我是否需要使用join或merge我的包含百万条记录的表? 我尝试过使用联接,但没有得到确切需要的联接。像这样:

StudentID  DEPT VALUE
  1        1     5
  1        2     5
  2        3     NULL
  2        4     NULL
SELECT S.StudentId, S.Dept, V.Value
FROM Student AS S
JOIN #TEMP AS V
  ON V.StudentId = S.StudentId
ORDER BY V.StudentId

这可以通过简单的内部连接来实现。你可以发布你试图检查你是否做的每件事都是正确的吗?不需要左连接,他的#TEMP应该为所有学生都有一行,示例显示了这一点,他从来没有提到需要这一行。他没有直接声明TEMP表将有所有学生ID,并且查询将给出相同的结果。不需要下伏顿,所以你回答问题。您的回答使它看起来像是左连接是必要的,而不是。除非OP明确指出,根据事实回答他的问题才是你应该做的。