2012-09-10 81 views
4

我想要記住如何在Oracle SQL中形成正確的REPLACE語句。使用REPLACE功能的Oracle UPDATE語句

實質上,我需要在幾千條記錄中執行REPLACE,其中column1column2可能包含值'14'。如果他們這樣做,我需要用空格字符替換它。

我知道,語法是類似於下面的東西,但我似乎無法得到它完全正確:

UPDATE TABLE 
SET ('column1', 'column2') = REPLACE(?????????????) 
WHERE 'column1' IN ('14') AND 'column2' NOT LIKE ('4%') 

任何幫助,將不勝感激。

回答

9

查詢應看起來像這樣:

UPDATE table1 
SET column1 = REPLACE(column1, '14', ' '), 
    column2 = REPLACE(column2, '14', ' ') 
WHERE column1 LIKE '%14%' OR column2 LIKE '%14%' 
+0

REPLACE(Column1,'14','')應該是REPLACE(Column1,'14','');) – Fred

+0

「UPDATE TABLE」在Oracle中不是有效的DML語句。 – DanielM

1
UPDATE TABLENAME 
    SET COLUMN1 = ' ', 
    SET COLUMN2 = ' ' 
WHERE COLUMN1='14' OR COLUMN2='14'; 

假設列[1,2]是字符類型。