I hear you and had the same thoughts. The problem is that once this data is cleaned up, it is going into Salesforce and the only way to use their multiple selection picklists is to serialize the choices in one field. I can convert the int categoryid into let's say varchar(50) to accomodate the comma separated values.
I have very little to no control of what I can do inside of salesforce, so I need to fit/massage the data outside of SF and then upload it into the Salesforce application,
thanks,
Petr