"where group_id LIKE '%2%'" is close to what you are looking
Unfortunately this will also match the several twos in the
list "12,21,202". You will have to be very careful on
value of 2 and a 2 as part of a larger value.
This is a big reason why good data base design would
normalize this kind
of data into a join table so that on can easily distinguish
between a 2
and a 22.
MySQL may have functions that allow you to find a value in a
list. If not you may need to use a series LIKE statements. Either
way the query will almost certainly be slower than if your data
were properly normalized.
Field = '2' OR Field LIKE '2,%' OR Field LIKE '%,2,%' OR
Field LIKE '%,2'
Storing data in that manner is generally considered a bad
design. One of the reasons is what you've discovered: its difficult
to query. I would strongly recommend that you normalize your data.