Вие не съхранявате данните си по подходящ начин. Както и да е, ако все пак искате да използвате тази схема, трябва да използвате FIND_IN_SET вместо LIKE, за да избегнете нежелани резултати.
SELECT *
FROM mytable
WHERE FIND_IN_SET(2, ancestors) <> 0