我有以下查询。我试图只添加值,如果值不为空,那么整个变量不会最终为空。显然,下面的这个查询出错了,但我不想在测试列上使用 ISNULL 检查,因为它在变量文本的末尾放置了一个逗号。如果变量文本末尾没有逗号,我将如何做到这一点。有时测试列中会有空值,有时则不会。
DECLARE @Test TABLE
(
test varchar(20)
)
INSERT INTO @Test
SELECT 'adfasdfasd'
UNION ALL
SELECT NULL
DECLARE @DocID varchar(max)
SELECT CASE WHEN test IS NOT NULL THEN @DocID = COALESCE(@DocID + ',' ,'') + test END
FROM @Test
SELECT @DocID