열의 값을 업데이트해야합니다. 기존 값에서 부분 문자열 바꾸기를 수행해야합니다.업데이트에서 T-SQL 문자열 대체
예 :
데이터를 포함 [email protected]
, [email protected]
등
I가 @domain2
@domain1
가 교체되도록 값을 업데이트 할 필요가있다.
열의 값을 업데이트해야합니다. 기존 값에서 부분 문자열 바꾸기를 수행해야합니다.업데이트에서 T-SQL 문자열 대체
예 :
데이터를 포함 [email protected]
, [email protected]
등
I가 @domain2
@domain1
가 교체되도록 값을 업데이트 할 필요가있다.
REPLACE에 대한 구문 :
REPLACE (string_expression, string_pattern, string_replacement)
그래서 당신이 필요로하는 SQL이되어야한다고 :
UPDATE [DataTable] SET [ColumnValue] = REPLACE([ColumnValue], 'domain2', 'domain1')
update YourTable
set YourColumn = replace(YourColumn, '@domain2', '@domain1')
where charindex('@domain2', YourColumn) <> 0
이 답변에서 where 절을 포함하면 승인 된 답변보다 효율성이 향상됩니까? –
사람이 NTEXT
에 대한 관심 경우 다음 형식을 사용하십시오.
SELECT CAST(REPLACE(CAST([ColumnValue] AS NVARCHAR(MAX)),'find','replace') AS NTEXT)
FROM [DataTable]
그 명령문 자체는 업데이트를 실행하지 않습니다. 당신이 다음을 수행해야합니다 UPDATE [DataTable을] (NTEXT AS (교체 CAST ([ColumnValue] NVARCHAR (MAX)), '도메인 2', 'domain1을'AS)) SET [ColumnValue] = CAST를 SET FROM [DataTable] –
각 열에는 몇 개의 전자 메일 주소가 있습니까? abc @ domain1과 pqr @ domain2는 같은 열에 있습니까? – dana
예 - 그들은 같은 열에 있습니다. – Sekhar