Dette burde faktisk være, hvad du vil have i 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));
Det er lidt mere kompliceret end mit tidligere svar - Du skal finde den første forekomst af 'A' (ved hjælp af INSTR-funktionen), og derefter bruge VENSTRE i kombination med REPLACE for at erstatte netop den forekomst, end bruge SUBSTRING og INSTR for at finde det samme 'A' du erstatter, og KONCAT det med den forrige streng.
Se min test nedenfor:
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;
Producerer:
actual_string new_string
--------------------------------------------- ---------------------------------------------
this is A string with A replace and An Answer this is B string with A replace and An Answer