我的数据库中有一列包含以连字符开头或结尾的条目。如果连字符是字符串中的最后一个或第一个(或两个)字符,我想找到这些行并删除/替换连字符。
我现在拥有的:
-sample-value-one-
sample-value-two-
-sample-value-three
sample-value-four
这就是我想要实现的目标:
sample-value-one
sample-value-two
sample-value-three
sample-value-four
所以我必须找到所有以连字符开头或结尾的行,如果匹配,则删除连字符,而字符串中的其他连字符应保持不变。
替换一个字符串我没有问题,但这个任务对我来说似乎太难了。
最佳答案
假设它只是一个连字符,那么:
# Remove first hyphen
update myTable
set myCol = substr(myCol,2)
where myCol like '-%'
;
# Remove last hyphen
update myTable
set myCol = substr(myCol,1,length(myCol)-1)
where myCol like '%-'
;
关于mysql - 如果字符串以指定字符开头或结尾,则替换字符串中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42010651/