2017-09-05 66 views
1

我使用下面的查询将文本追加到逗号分隔值的可变长度的文本字段的末尾:SQL服务器 - 设置字段设置为一个文本值,如果NULL,附加不同的文本值如果不是

UPDATE dbo.Sources 
SET CatCustom = RTRIM(CatCustom) + ', LRR01' 
WHERE SourceID IN (1,2,3,4,5,8,9,44,63,45,101,102,222,344) 

我发现的是,许多CatCustom字段都是NULL,因此我最后会在这些字段中使用',LRR01' - 领先的逗号和空格是不可取的。因此,我将如何加强这方面的询问说

> If the CatCustom field is NULL, set it to 'LRR01', else SET CatCustom = RTRIM(CatCustom) + ', LRR01'? 

回答

2

concat_ws正是你所需要的:

UPDATE dbo.Sources 
SET CatCustom = CONCAT_WS(', ', RTRIM(CatCustom), 'LRR01') 
WHERE SourceID IN (1,2,3,4,5,8,9,44,63,45,101,102,222,344) 
相关问题