2015-06-03 54 views
2

我有包含由逗號等剝離一些的話SQL表中的VARCHAR列替換詞:在SQL中逗號分開

Col1 
man,woman,cat 
dog,man,cat 
dog,cat,woman,man 

,我需要用另一個替換一些字,比方說,將「人「到‘男孩’

但我需要避免的情況時,‘人’被替換爲另一個單詞的一部分 - ‘女’變成了‘woboy’

如何做到在SQL?

UPDATE Table1 SET Col1=??? WHERE ??? 
+2

哪個數據庫? – 6ton

+4

修復您的數據結構,以便正確地將結果列表存儲在結點表中。 –

+0

此問題已被解答: http://stackoverflow.com/questions/6497074/sql-replace-function-that-matches-whole-words – gardo

回答

0

好吧,我敢肯定,有沒有更好的辦法,但這種工作(對於SQL Server):

UPDATE Table1 
SET col1 = SUBSTRING(REPLACE(',' + col1 + ',',',man,',',boy,'),2, 
        LEN(REPLACE(',' + col1 + ',',',man,',',boy,'))-2) 
WHERE ',' + col1 + ',' LIKE '%,man,%';