在T-SQL中联接多个表并丢失一个表的空行

时间:2018-06-25 21:00:53

标签: sql-server tsql

我正在尝试使用完全外部联接来联接4个不同的表。表1(日历)仅包含日期。表2(通话数据)将表2中的日历日期与其他与通话相关的数据结合在一起。表3(销售总额)是表1的加入日期,表2是其他相关数据的加入日期。表4(有偿销售)也是表1的加入日期,表2是其他相关数据的加入日期。

我担心的是,我丢失了表2中的所有空值。例如,表3和表4将具有销售数据,但是表2不会具有相同的销售和通话数据,因为此特定销售是在线进行的(没有因此,我希望使用完整的外部联接从表3和表4中获得更多行,因此我希望我的完整外部联接能够捕获这些,但它们不会!我已经撞上了砖墙。下面的示例:

scan(text= gsub("[{}]", "", x), what = numeric(), sep="," , quiet = TRUE)

我想要的是上面有销售信息但是NULL通话信息的最后一行,但是我没有在结果中得到它。

有什么想法吗?下面是查询:

cal_date    manager                        TID  user_signups    paid_sales  Calls
------------------------------------------------------------------------------------------
6/1/2018    Online - PPC Social Facebook    4850        2               2           4
6/1/2018    Online - PPC Social Facebook    30355       1               1           1
6/1/2018    Online - PPC Social Facebook    31719       1               1           1
6/1/2018    Online - PPC Social Facebook    31717       1              NULL         1
6/1/2018    Online - PPC Social Facebook    31709       1               1           NULL

0 个答案:

没有答案