Myślę, że najlepszą odpowiedzią na ten problem jest poniższy linkNajlepszy sposób na usunięcie wartości z pola SET?
zapytanie powinno być takie, które obejmuje ,wartość lub wartość, lub tylko wartość w kolumnie oddzielonej przecinkami
UPDATE yourtable SET categories = TRIM(BOTH ',' FROM REPLACE(CONCAT(',', col, ','), ',2,', ',')) WHERE FIND_IN_SET('2', categories)
Tutaj możesz mieć swój stan w klauzuli gdzie. więcej szczegółów można znaleźć w powyższym linku.