Pokud se "MyString" bude vždy vyskytovat jako první termín v poli, bude to fungovat:
update MyTable set MyField = replace(MyField, ' MyString','')
Klíčovým bodem výše je, že hledáme výskyty "MyString" s úvodní mezerou, takže první výskyt na začátku pole bude ignorován.
Domnívám se však, že by to mohlo být příliš křehké – co když první výskyt „MyString“ není na začátku pole?
v tomto druhém případě potřebujete následující:
UPDATE
MyTable
SET
MyField =
CONCAT(
LEFT(MyField,INSTR(MyField,'MyString') + LENGTH('MyString')),
REPLACE(RIGHT(MyField, LENGTH(MyField) - (INSTR(MyField,'MyString') + LENGTH('MyString'))), 'MyString','')
)
Tím se pole rozdělí na dvě části, první část až po první výskyt "MyString" (včetně) a druhá část nahradí všechny další jeho výskyty.