sql合并两个字段,其中NULL可以在任何字段中

时间:2016-01-07 22:06:36

标签: sql-server merge

我目前在两个表的第一列中都有两个包含人名的表。但情况是这两个表中有不同的名称。为了保存两个表的信息,我使用FULL OUTER JOIN,因为我们可以想象SQL给了我一个这样的表:

   Name1  |   Name2 | ...
    Mary  |   Mary  | ...
    NULL  |   Jack  | ...
    Jim   |   Jim   | ...
   Martin |   NULL  | ...
   Bella  |   Bella | ...
    Bex   |   Bex   | ...

我想要的只是保留一列,如果其中一列中有NULL,则应使用另一列上的名称。理想情况下,我想要的结果应该是这样的:

    Name  | ...
    Mary  | ...
    Jack  | ...
    Jim   | ...
   Martin | ...
   Bella  | ...
    Bex   | ...

是否有帮助将两列合并的功能?

提前致谢

1 个答案:

答案 0 :(得分:2)

函数(或更确切地说:表达式)称为COALESCE()。它需要可变数量的参数并返回第一个不为null的参数:

COALESCE(Name1, Name2)
相关问题