2014-02-10 20 views
1

我想用myTable的名稱列中的s替換's的所有出現。 我試過REPLACE,但它取代了所有記錄。我想爲一些顧客做。MySQL從列中替換字符

說明:客戶是myTable中的外鍵。

在此先感謝

更新:

我嘗試了一些疑問 REPLACE(name, "'s", "s") from data where cust_id = 1但這不起作用

從我試圖SELECT REPLACE(name, "'s", "s") from data where cust_id = 1問題之一。 這是替換表中的所有記錄

+0

您是否嘗試過'WHERE'子句? –

+0

是的,我試過where子句,但它不接受where子句 – User16119012

+0

你試過什麼查詢?你能告訴我們SQL嗎? –

回答

2

跨表中的所有記錄的簡單替換功能也可以用:

UPDATE myTable 
set name = REPLACE(name, '\'s', 's') 

如果要篩選記錄,從另一個表進行更新,那麼你就可以做類似

UPDATE myTable 
LEFT JOIN CustomerTable ON myTable.Customer = CustomerTable.Customer 
SET name = REPLACE(name, '\'s', 's') 
WHERE CustomerTable.Field > SomeCondition <== Replace with what you need. 
+1

謝謝你。爲什麼我不能使用替換更新。無論如何,這幫助了我很多。 – User16119012