Muszę zaktualizować wartości kolumny, zastępując podciąg na istniejących wartościach.
Przykład:
Zawiera dane abc@domain1, pqr@domain2itd.
Muszę zaktualizować wartości takie, które @domain2są zastępowane @domain1.
Muszę zaktualizować wartości kolumny, zastępując podciąg na istniejących wartościach.
Przykład:
Zawiera dane abc@domain1, pqr@domain2itd.
Muszę zaktualizować wartości takie, które @domain2są zastępowane @domain1.
Odpowiedzi:
Składnia REPLACE :
REPLACE (wyrażenie_ciągowe, wzorzec_ciągów, zastąpienie_łańcuchów)
Aby SQL, którego potrzebujesz, był:
UPDATE [DataTable] SET [ColumnValue] = REPLACE([ColumnValue], 'domain2', 'domain1')
Jeśli kogoś to obchodzi NTEXT, użyj następującego formatu:
SELECT CAST(REPLACE(CAST([ColumnValue] AS NVARCHAR(MAX)),'find','replace') AS NTEXT)
FROM [DataTable]
update YourTable
set YourColumn = replace(YourColumn, '@domain2', '@domain1')
where charindex('@domain2', YourColumn) <> 0