2009-06-11 6 views

ответ

46

Это делается с помощью функции REPLACE

раздеть «SomeString» от «SomeColumn» в «SomeTable» в запросе на выборку:

SELECT REPLACE([SomeColumn],'somestring','') AS [SomeColumn] FROM [SomeTable] 

Чтобы обновить таблицу и раздеть «SomeString "от„SomeColumn“в„SomeTable“

UPDATE [SomeTable] SET [SomeColumn] = REPLACE([SomeColumn], 'somestring', '') 
8

Используйте «Replace» строковую функцию на колонке в вопросе:

UPDATE (yourTable) 
SET YourColumn = REPLACE(YourColumn, '*', '') 
WHERE (your conditions) 

Заменить «*» с характером вы хотите вырезать и указать ваш ИНЕКЕ, чтобы соответствовать строки, которые вы хотите применить обновление до.

Конечно, функция REPLACE также может быть использована - как показал другой ответчик - в инструкции SELECT - из вашего вопроса я предположил, что вы пытались обновить таблицу.

Марк

6

Взгляните на следующую функцию - REPLACE():

select replace(DataColumn, StringToReplace, NewStringValue) 

//example to replace the s in test with the number 1 
select replace('test', 's', '1') 
//yields te1t 

http://msdn.microsoft.com/en-us/library/ms186862.aspx

EDIT
Если вы хотите удалить строку, просто используйте функцию replace пустой строкой как t он третий параметр, как:

select replace(DataColumn, 'StringToRemove', '') 
+0

SQLServer использует одиночные кавычки вместо двойных кавычек – ichiban

+0

@ichiban - я все еще надеюсь, что это someth SQL исправляется. Было бы хорошо, если бы это было последовательным, учитывая, что одна цитата может комментировать код VB ... Я отредактировал сообщение. Благодаря! – RSolberg

4
UPDATE [TableName] 
SET [ColumnName] = Replace([ColumnName], '[StringToRemove]', '[Replacement]') 

В вашем случае это будет

UPDATE [TableName] 
SET [ColumnName] = Replace([ColumnName], '[StringToRemove]', '') 

Потому что нет никакой замены (вы хотите, чтобы избавиться от него).

Это будет работать в каждой строке указанной таблицы. Нет необходимости в предложении WHERE, если вы не хотите указывать только определенные строки.

Смежные вопросы