请参阅MSDN:+(字符串连接)(Transact-SQL):
就像对空值执行的算术运算一样,当将空值添加到已知值时,结果通常是未知值,使用空值执行的字符串连接操作也应该产生空结果.
因此,为了使事情有效,在声明之后立即启动varchar变量是一个好习惯:
DECLARE @ConcText NVARCHAR(1000) SET @ConcText = ''
处理NULL concat问题的其他方法(如果你不知道值是否为NULL) - ISNULL或COALESCE:
SET @ConcText = ISNULL(@ConcText, '') + N' counter,' SET @ConcText = COALESCE(@ConcText, '') + N' counter,'