2014-01-17 147 views
0

我有兩個表A & B.它們都具有公共列。 A的大部分列都是空的,但B大部分都已滿。通過查詢另一個表來填充一個表的值

我想編寫一個查詢將在一個不屬於空&使用選擇的列,得到從表B中的其他空列信息&在A.更新它們

我猜我會在這裏需要選擇更新但不確定。需要幫忙。

表A
名稱地址******中國
尼克二街NY空
丹空123-456-7890

表B
名稱地址******中國性別
尼克二街紐約987-654-3210 M
Dan 5th St NY 123-456-7890 M

結果應該是該表A通過queryin填充其空列摹表B.列SEX不答:存在需要只是電話號碼&地址,因爲這就是在A.空

結果
表A
名稱地址******中國
尼克二街NY 987-654-3210
丹五街NY 123-456-7890

+0

如果您發佈了簡化的起始數據集和樣本期望的結束數據集以更好地闡明您的問題,可能會有幫助 – Dan

+0

您可能需要查看[COALESCE()](http://dev.mysql.com /doc/refman/5.0/en/comparison-operators.html#function_coalesce)函數。它會選擇它找到的第一個非null值。 –

回答

0

事情是這樣的:

UPDATE 
A INNER JOIN B ON A.column = B.column /*the columns that connect the tables*/ 
SET A.almost_empty_column = B.full_column 
WHERE A.almost_empty_column IS NULL OR A.almost_empty_column = ''; 

但我建議,你甲肝e看看教程,至少如果不是手冊,不要複製&在互聯網上粘貼一些貼子。你不通過不去了解發生了什麼。

相關問題