Si "MyString" siempre aparece como el primer término en el campo, esto funcionaría:
update MyTable set MyField = replace(MyField, ' MyString','')
El punto clave anterior es que buscamos ocurrencias de "MyString" con un espacio inicial, por lo que se ignorará la primera ocurrencia al principio del campo.
Sin embargo, supongo que esto podría ser demasiado frágil:¿qué pasa si la primera aparición de "MyString" no está al principio del campo?
en este último caso necesitas lo siguiente:
UPDATE
MyTable
SET
MyField =
CONCAT(
LEFT(MyField,INSTR(MyField,'MyString') + LENGTH('MyString')),
REPLACE(RIGHT(MyField, LENGTH(MyField) - (INSTR(MyField,'MyString') + LENGTH('MyString'))), 'MyString','')
)
Lo que esto hace es dividir el campo en dos, la primera parte hasta e incluyendo la primera aparición de "MyString", y la segunda parte reemplaza todas las demás apariciones.