I posted this in your other thread:
I would not do that. My suggestion is have a services table with 3 columns. This makes the tables very relational and keeps overhead down.
For example:
Table Columns:
userID int
serviceCode int
accessedTimes int
Have another table called Services (or similar) with the following
serviceCode int (PK)
serviceDescription
Have have the data like
1 - news
2 - sports
3 - music
You would then build an index (or foreign key relationship if your db supports it) from the Service table to your userProfiles table on serviceCode. Alternatively to keep down on lookups, you can insert a row into a tabe named like servicesAccessed and make it
userID int
serviceCode int
Then just issue SELECT Count(userID) As Cnt, userID, serviceCode FROM servicesAccessed WHERE userID=1 GROUP BY userID, serviceCode
This would keep from index lookups on every hit, but you would get hit for a index fill every time a row was inserted into the other table. It depends on howyou feel comfortable.