簡體   English   中英

SQL-如何使用另一個表中的值將兩個表中的一個或兩個表中的值缺失或為空來聯接兩個表

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

好的StackOverflow,我有一個問題:

我正在使用Azure機器學習進行一些工作,但陷入僵局。 我有兩個表,我需要加入它們。 這些表如下所示:

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

(這些只是示例。)

當它們共享的列(在這種情況下只有b,但可以是多個)相等時,我需要加入這些表。 但是,我還需要填充缺少的值。 如果表A缺少其列之一的值,而表B則具有匹配行的值,則它們應在結果表中合並值。 我知道有一種方法可以做到這一點,但是它也需要反向工作,這樣,如果表B缺少一個值,而表A有一個值,則會填充它。

編輯:所需結果:

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

一些背景信息:

  • AzureML使用一種SQLite形式進行SQL解釋,因此請嘗試將答案盡可能保留在基本SQL中。 謝謝! :)
  • 對於熟悉AzureML的人員,AzureML具有內置的加入模塊,但是我認為它無法完成必要的工作。 我將使用SQL解釋模塊。

感謝您的協助! 謝謝!

回答我自己的問題:

原來我需要的聯接類型是完全外部聯接。

背景資料:

  • 對於將來追求與該問題相關的AzureML的人員,我必須啟用該功能以保存“右”表輸入中的列。
  • 然后,我通過“項目列”模塊和“元數據”模塊運行此操作,以將它們重命名為所需的形式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM