Můžete to omezit na podmnožinu více uzavřenou vašim potřebám vložením klauzule WHERE s REGEXP():
UPDATE products SET prodname = REPLACE(prodname, " S", "'S") WHERE prodname REGEXP '[0-9]\sS'
To odpovídá řádkům s názvy produktů, které mají číslo, za nímž následuje mezera a za ním S. Bohužel v MySQL není standardně implementováno žádné nahrazení REGEX, aby bylo možné nahradit pouze tuto shodu, takže to také nahradí „TYLENOL TAB SOLO 100 S" na "TYLENOL TAB'SOLO 100'S", ale nenahradí původní "TYLENOL TABS 100 S"