我正在使用SQL Server 2012.我的输入字符串是
'data1''data2''data3''data4''data5'
我希望输出为:
'data1','data2','data3','data4','data5'
我尝试了以下
DECLARE
@P_NAME VARCHAR(20),
@V_NAME_1 VARCHAR(20);
SET @P_NAME = 'E056''E056''E056''E056''E056'
SET @V_NAME_1 = REPLACE(@P_NAME,'''',''',''')
SELECT @V_NAME_1
但它不会返回预期的输出。
请让我知道我错过了什么。
谢谢, AMOL
答案 0 :(得分:5)
您需要增加VARCHAR的长度,我已将其设置为50以下。对SET语句的调整也很少。我已经改变了测试值;
DECLARE
@P_NAME VARCHAR(50),
@V_NAME_1 VARCHAR(50);
SET @P_NAME='E056''E057''E058''E059''E060'
SET @V_NAME_1=''''+REPLACE(@P_NAME,'''',''',''')+''''
SELECT @V_NAME_1