首页 > 解决方案 > 连接列 + 子选择,即使子选择没有返回结果

问题描述

如何连接列和子选择,即使此子选择没有返回结果?

在下面的愚蠢示例中,当子选择不返回任何结果时,结果返回 NULL,即使Column_a不为空也是如此。

select a.Column_a + 
    (select top 1 b.Column_b from Table_b b where b.Id_Table_a = a.Id)
from Table_a a

如何避免?

标签: sql-servertsql

解决方案


您可以通过添加解决此问题isnull()

select a.Column_a + 
    isnull((select top 1 b.Column_b from Table_b b where b.Id_Table_a = a.Id), '')
from Table_a a

推荐阅读