Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como posso substituir apenas o primeiro resultado na função SQL


No MySQL <8.0, onde regexp_replace() e similares não são suportados, você pode usar funções de string:
update wp_comments
set comment_content = concat(
    substr(comment_content, 1, locate('XXX', comment_content) - 1),
    'MMM',
    substr(comment_content, locate('XXX', comment_content) + 3)
) 
where comment_id = 334 and locate('XXX', comment_content) > 0

Demonstração no DB Fiddle :
comment_id | comment_content                                                               
---------: | :-----------------------------------------------------------------------------
       334 | Hello MMM tomorrow we XXX will meeting in XXX Dubai, Do you want join us XXX ?