Я использую SQL-сервер и пытаюсь заменить строку
`{ status:"", dateLabel:'', title: 'Initiate'},`
из переменной @strProgress.
Я использовал ниже функцию замены
REPLACE(@strProgress, '{ status:"", dateLabel:'', title: 'Initiate'},','')
Может ли кто-нибудь помочь мне решить эту проблему?
SQL 2012. Я хочу заменить {status:"", dateLabel:'', title: 'Initiate'} пробелом, если он найден в @strProgress
Побег из кавычек - SELECT REPLACE(@strProgress, '{ status:"", dateLabel:'''', title: ''Initiate''},', '')





Вы получаете сообщение об ошибке, потому что вам нужно избежать одинарных кавычек внутри строки.
Если вы хотите заменить все экземпляры { status:"", dateLabel:'', title: 'Initiate'}, внутри строки, вам нужно экранировать все одинарные кавычки, используя двойные одинарные кавычки.
Например:
SELECT ''''
Этот запрос вернет ', потому что «дополнительная» кавычка сообщает SQL-серверу, что вам нужна одинарная кавычка внутри этой строки.
Таким образом, ваш код должен быть примерно таким:
REPLACE(@strProgress, '{ status:"", dateLabel:'''', title: ''Initiate''},','')
Какая версия SQL Server? И каков ожидаемый результат?