左连接两个表返回空值

时间:2017-10-29 08:38:09

标签: sql sql-server tsql

我有这两个表@tmp@tmp1

enter image description here

我正在写一个像

这样的查询
SELECT  
    repperiod, sequence, t1.title, question,
    (CASE WHEN t2.Answer = 1 THEN 1 ELSE 0 END) Met,
    (CASE WHEN t2.Answer = 3 THEN 1 ELSE 0 END) NA,
    (CASE WHEN (ISNULL(t2.Answer,3) <> 3) THEN 1 ELSE 0 END) MetNotMet 
FROM
    @tmp t1
LEFT OUTER JOIN
    @temp1 t2 ON t1.ScheduleQuestionID = t2.ScheduleQuestionID 
              AND t1.deptsplit = t2.DeptSplit

它返回Met,NA,MetNotMet,其值为NULL

查询中有什么问题?

@tmp的行数多于@ tmp1。因此,并非@tmp中的所有问题ID都出现在@ tmp1中。

有些记录针对同一问题有多个答案。所以我被部门分裂了。

我想从@tmp获取所有行。所以我正在创建左连接。

0 个答案:

没有答案