mysql链式replace函数在一次查询执行中只替换一个值

gv8xihay  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(539)

在album\ ids 1和8下的元组中,我想用空('')替换'alternative'的'genre'字段值。但是当我执行这个sql脚本时,它一次只替换一个值。有没有办法保留字符串的一半(即“独立”类型,除了“alternative”和它周围的逗号和空格)并执行脚本,以便所有的值都被替换?我的代码怎么了?

UPDATE Album
SET Genre = REPLACE(REPLACE(Genre, ', Alternative', ''), 'Alternative, ', '')
WHERE Album_ID < 9

pbwdgjma

pbwdgjma1#

您可以使用 TRIM 以及 REPLACE :

UPDATE Album
SET Genre = TRIM(TRIM(BOTH ',' FROM TRIM(REPLACE(Genre, 'Alternative', ''))))
WHERE Album_ID < 9

demo:http://sqlfiddle.com/#!9/3c6fe1/1/0

相关问题