[英]mySql replace only a single word in a column
我試圖單獨使用mySql,試圖用microsoft-corp替換microsoft一詞。
我嘗試使用此sql, update names set names = replace(names,'microsoft','microsoft-corp')
,但是它將替換每個microsoft
。 有沒有一種方法可以使它僅替換Microsoft這個詞?
原始數據
"id" "names"
"1" "/microsoft"
"2" "/microsoft/microsoft-word"
"3" "/microsoft/microsoft-word/microsoft-word-tutorials"
"4" "/microsoft/microsoft-word/microsoft-word-tutorials/examples"
"id" "names"
"1" "microsoft >"
"2" "microsoft > microsoft-word"
"3" "microsoft > microsoft-word > microsoft-word-tutorials"
"4" "microsoft > microsoft-word > microsoft-word-tutorials > examples"
預期正確的結果
"id" "names"
"1" "/microsoft-corp"
"2" "/microsoft-corp/microsoft-word"
"3" "/microsoft-corp/microsoft-word/microsoft-word-tutorials"
"4" "/microsoft-corp/microsoft-word/microsoft-word-tutorials/examples"
使用我上面的查詢當前不正確的結果
"id" "names"
"1" "/microsoft-corp"
"2" "/microsoft-corp/microsoft-corp-word"
"3" "/microsoft-corp/microsoft-corp-word/microsoft-corp-word-tutorials"
"4" "/microsoft-corp/microsoft-corp-word/microsoft-corp-word-tutorials/examples"
怎么樣:
update names set names = replace(names,'/microsoft/','/microsoft-corp/')
update names set names = '/microsoft-corp' where names = '/microsoft'
update names set names = replace(names,'microsoft >','microsoft-corp >')
我可能會分兩次通過,盡管您可能一次就能做到。
update names set names = replace(names,'/microsoft/','/microsoft-corp/');
update names set names = '/microsoft-corp' where names = '/microsoft';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.