SQL服务器,当一些为null时,concat nvarchar

时间:2016-05-09 17:35:21

标签: sql sql-server

可能是空值的问题......

我想在C#中做:

string s3 = s2 + ' ' + s1;
女巫可以像:

'hello world' = 'hello' + ' ' + 'world

但是在SQL中,我的一些NVARCHAR(1)是null,所以它有时看起来像:

null = 'hello + ' ' + null

在这种情况下,我宁愿拥有:

'hello ' = 'hello' + ' ' + null

我不明白,有没有一种简单的方法可以做到这一点?

2 个答案:

答案 0 :(得分:1)

使用COALESCE()ISNULL()

SELECT COALESCE(S2, '') + ' ' + COALESCE(S1, '')

或者:

SELECT ISNULL(S2, '') + ' ' + ISNULL(S1, '')

答案 1 :(得分:0)

您也可以使用IIF()函数或CASE语句

SELECT IIF(s2 IS NULL,'',s2)+' ' + IIF(s1 IS NULL,'',s1)