2009-06-11 5 views

risposta

46

Questo viene fatto utilizzando la funzione REPLACE

per togliere "somestring" da "SomeColumn" in "SomeTable" nella query SELECT:

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

Per aggiornare la tabella e striscia fuori "somestring "da 'SomeColumn' in 'SomeTable'

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

Utilizzare la "REPLACE" funzione di stringa su colonna in questione:

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

sostituire la "*" con il carattere che si desidera mettere a nudo fuori e specificare la clausola WHERE per abbinare le righe che si desidera applicare l'aggiornamento a.

Ovviamente, la funzione REPLACE può anche essere utilizzata - come altri risponditori hanno mostrato - in un'istruzione SELECT - dalla tua domanda, ho pensato che stavi cercando di aggiornare una tabella.

Marc

6

Date un'occhiata al seguente funzione - 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
Se si desidera rimuovere una stringa, semplice utilizzare la funzione di sostituzione con una stringa vuota come t lui come terzo parametro:

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

SQLServer utilizza apostrofi al posto delle virgolette doppie – ichiban

+0

@ichiban - sto ancora sperando che è someth correzione di SQL. Sarebbe bello che fosse coerente considerando che la singola citazione può commentare il codice VB ... Ho modificato il post. Grazie! – RSolberg

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

In all'istanza sarebbe

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

Poiché non v'è alcuna sostituzione (si vuole sbarazzarsi di esso).

Questo verrà eseguito su ogni riga della tabella specificata. Non c'è bisogno di una clausola WHERE a meno che non si voglia specificare solo determinate righe.

Problemi correlati