使用具有不存在的记录的表创建SQL Server视图

时间:2018-01-16 17:43:37

标签: sql sql-server

我正在尝试使用一个表创建SQL Server中的视图,该表具有一个值列表,我希望从其他表中将其他几列连接到其上。

任何记录都包含我的每一个&#34; key&#34;值可以毫无问题地工作,但是当我想要添加一个表中没有记录每个单词&#34;键&#34;价值,它只是排除了这个价值。我希望它将其设置为<NULL>,而不是完全排除它。

+--------+--------+--------+    
| KeyNum | Value1 | Value2 |
+--------+--------+--------+
| 988    | 14     | YES    |
| 989    | 44     | NO     |
| 778    | 124    | NO     |
| 445    | 87     | YES    |
| 999    | 12     | YES    |
| 368    | 89     | NO     |
+--------+--------+--------+

+--------+--------+
| KeyNum | Value5 |
+--------+--------+
| 988    | 88     |
| 989    | 12     |
| 999    | 74     |
| 368    | 46     |
+--------+--------+

所以,我想要做的是将第二个表中的值连接到View中的第一个表,但是当我尝试时,我只能让它在第二个表中显示带有记录的值。

1 个答案:

答案 0 :(得分:1)

在您的情况下,您需要使用左外连接而不是内连接 例如,当您想要显示table1中的所有值以及table2中的任何匹配行时:

select a.*, b.value5 from table1 a
left outer join table2 b on a.keynum = b.keynum