2012-11-13 45 views
2

我在數據庫中有很多記錄,並且我想從特定列中的所有記錄中刪除特定的字符。如何從數據庫MySQL中的巨大記錄中刪除特定字符?

,比如我有這個表

id cost distance 
1 $1,519 21.5 miles 
2 $7,987 32.789 miles 

我想刪除的費用列中的所有美元符號和逗號,以及我想從距離欄

所以刪除單詞英里我想最終的結果是

id cost distance 
1 1519 21.5 
2 1987 32.789 

你能請幫助我怎麼可以做到這一巨量的記錄?

回答

4

使用REPLACE此,

UPDATE tableName 
SET cost = REPLACE(REPLACE(cost, '$', ''), ',',''), 
    distance = REPLACE(distance, 'miles', '') 
+0

+1完美解決方案。 – Jeremy1026

+0

MySQL文檔說自引用列是不可能的(對於DML'REPLACE')。 *「您無法引用當前行中的值並將它們用於新行。」* – Kermit

+0

這不會在文本字段中保留值嗎?轉換爲數字類型不是更好嗎,所以這些值可以有效地用於計算? – njr101

0
select id, 
     replace(substring(price, 2, length(price)), '.', ''), 
     replace(distance, 'miles', '') 
from *tablename*