Há um cenário complicado. Se eu estiver procurando por '40' na lista '17,34,400,12', ele encontrará ",40" e retornará essa entrada incorreta. Isso cuida de todas as soluções:
WHERE (',' + RTRIM(MyColumn) + ',') LIKE '%,' + @search + ',%'
WHERE (',' + RTRIM(MyColumn) + ',') LIKE '%,' + @search + ',%'