SQL - 如何使用来自另一个 table 的值连接两个 table 以弥补 table 中的缺失值或空值

SQL - How to join two tables using values from the other table for missing or null values in either table

好的 Whosebug,我有一个问题:

我正在用 Azure Machine Learning 做一些工作,但我陷入了僵局。我有两个 table,我需要加入他们。 table 看起来像这样:

   TABLE A          TABLE B   
+-----------+    +-----------+
| a | b | c |    | a | b | c |
+-----------+    +-----------+
| 1 | 2 |   |    |   | 2 | 3 |
+-----------+    +-----------+

(这些只是示例。)

我需要加入这些 table,当它们共享的列(在本例中只有 b,但可以是多个)是等价的。但是,我还需要填充缺失值。如果 TABLE A 缺少其中一列的值,而 TABLE B 有匹配行的值,则它们应该在结果 table 中组合值。我知道有一种方法可以做到这一点,但它也需要反向工作,所以如果 TABLE B 缺少一个值,而 TABLE A 有一个,它就会被填充。

编辑:期望的结果:

   TABLE C
+-----------+
| a | b | c |
+-----------+
| 1 | 2 | 3 |
+-----------+

一些背景信息:

感谢您的协助!谢谢!

回答我自己的问题:

原来我需要的连接类型是完全外部连接。

背景资料:

  • 对于那些在未来追求与此问题相关的 AzureML 的人,我必须启用从 'Right' table 输入中保存列的功能。
  • 然后我 运行 通过 'Project Columns' 模块和 'Metadata' 模块将它们重命名为我想要的形式。