There a few ways to skin this and it depends on the number of groups you have and the number people are likely to belong to.
One option would be record members of a group in a group/member table. So you have a member table, a group table and a link table which ties the two together.
field might be:
id (unique key, auto incremment)
group_id
member_id
There would be a record for each member/group.
You can then get all the members of a group by "select ... where group = 'group_id'"
And you can get the groups a member belongs to by "select ... where member_id = 'member_id'"
To maintain the table simply insert or delete records as members subscribe/unsubscribe to the different groups.
Another option(if there a only a few groups) would be to code in the groups in the member record using the old binary flags technique. e.g. where there a 4 groups a value of 2 (binary 0010) means the member is in group 2 and a value of 9 (binary 1001) means they are a member of both 1 and 4. Each binary digit represents a group. You might also like to check out the SET field type in MYSQL which will handle this for you. You can then use masks to get members of any combination of groups.
I favour the first option - although it gives another table to maintain it does mean your relationships are more clear.