Given this is your existing table:
create table table1(thekey int primary key, random_info varchar(10))
Create your event-table:
create table table1_event(thekey int not null, event varchar(100) not null,
counter int, primary key(thekey, event))
For each event:
insert into table1_event values(<a key>, 'the event', 1)
on duplicate key update counter=counter+1
Summary of events:
select table1.thekey, table1_event.event, table1_event.counter
from table1 left outer join table1_event on table1.thekey=table1_event.thekey
Edited to reflect changed question and comment from poster