Cela devrait en fait être ce que vous voulez dans MySQL :
UPDATE wp_post
SET post_content = CONCAT(REPLACE(LEFT(post_content, INSTR(post_content, 'A')), 'A', 'B'), SUBSTRING(post_content, INSTR(post_content, 'A') + 1));
C'est un peu plus compliqué que ma réponse précédente - Vous devez trouver la première instance du 'A' (en utilisant la fonction INSTR), puis utiliser LEFT en combinaison avec REPLACE pour remplacer uniquement cette instance, puis utiliser SUBSTRING et INSTR pour trouver le même 'A' que vous remplacez et CONCATEZ-le avec la chaîne précédente.
Voir mon test ci-dessous :
SET @string = 'this is A string with A replace and An Answer';
SELECT @string as actual_string
, CONCAT(REPLACE(LEFT(@string, INSTR(@string, 'A')), 'A', 'B'), SUBSTRING(@string, INSTR(@string, 'A') + 1)) as new_string;
Produit :
actual_string new_string
--------------------------------------------- ---------------------------------------------
this is A string with A replace and An Answer this is B string with A replace and An Answer