用连接替换空值

时间:2019-05-06 22:04:19

标签: sql tsql

我有两个桌子

      Table1:                                Table2:
ID:      Type:     Amount:               ID:       Amount:
165      Red         300                 188       425           
167      Red         100                 189       500 
168      Blue        250                 222       129
188      Grey        NULL                333       247 
189      Grey        NULL                369       328 

我试图通过加入表2来替换表1中的空值。

我的代码产生两个金额列。

LEFT JOIN table2 
ON table2.pk = table1.pk
AND table1.Type IS NULL

2 个答案:

答案 0 :(得分:2)

我想你想要

select t1.id, t1.type, coalesce(t1.amount, t2.amount)
from table1 t1 left join
     table2 t2
     on t1.id = t2.id;

答案 1 :(得分:0)

希望这可以满足您的需求

R

您可以使用 isnull()函数,这样,如果第一个表金额为空,则它将取第二个表值。