Как заменить слово из предложения выбранным словом? - PullRequest
0 голосов
/ 08 апреля 2020
DECLARE @WHERE VARCHAR(MAX)
SET @WHERE='FROM USER T0 WHERE 1=1 AND (T0.SUBDIVISION = N''RESID'' OR T0.SUBDIVISION = N''PARK HYATT BC'' OR T0.SUBDIVISION = N''RESID,PARK HYATT BC'' ) AND (T0.IDCPROPERTYTYPE = N''RESIDENTIAL'' ) AND (T0.IDCSTATUS = N''ACTIVE'' OR T0.IDCSTATUS = N''UNDER CONTRACT'' ) AND T0.IDCLATITUDE BETWEEN 39@604095464559996 AND 39,606546508 AND T0.IDCLONGITUDE BETWEEN -1066,5164566858 AND -106.51645654'
SET @WHERE =REPLACE(@WHERE, ',', '@');

SELECT @WHERE

Это результат вышеприведенного запроса. Но если в выражении есть также ",", он также заменяется. Есть ли другой вариант?

"FROM DFT_CMNCMN t0 WHERE 1=1 AND (t0.SUBDIVISION = N'Resid' OR t0.SUBDIVISION = N'Park Hyatt BC' OR t0.SUBDIVISION = N'Resid@Park Hyatt BC' ) AND (t0.IDCPROPERTYTYPE = N'residential' ) AND (t0.IDCSTATUS = N'active' OR t0.IDCSTATUS = N'under contract' ) AND t0.IDCLATITUDE BETWEEN 39@6040654696999999996 AND 39@60654508 AND t0.IDCLONGITUDE BETWEEN -165406@516858 AND -105466.5154"

Мне нужен ответ, как показано ниже -

"FROM DFT_CMNCMN t0 WHERE 1=1 AND (t0.SUBDIVISION = N'Resid' OR t0.SUBDIVISION = N'Park Hyatt BC' OR t0.SUBDIVISION = N'**Resid@Park Hyatt BC**' ) AND (t0.IDCPROPERTYTYPE = N'residential' ) AND (t0.IDCSTATUS = N'active' OR t0.IDCSTATUS = N'under contract' ) AND t0.IDCLATITUDE BETWEEN 39.604096546999999996 AND 39.66540508 AND t0.IDCLONGITUDE BETWEEN -10546.516858 AND -106654.56456154"
...