I want to create a table where each entry, aside from other things, stores lots (30~) of different numerical values. These values can, in theory, be grouped into one big string parameter. With performance in mind, what is better? I will need to be able to make queries that can access each numerical value individually, but not necessarily in pure SQL: if I go for one big parameter, I will need to use php to parse out what I need.
The question of how to store such data depends basically on how it is being used.
If there is ever the remotest possibility that you will be using the database to access a single parameter value, then store the values in separate columns. This would occur in many situations, such as:
select
the value.If the "numbers" are really just a big blob that are used by some other process, then storing them as a blob is fine. But, from the database perspective, that is how you should think of them -- a big black box with no internal structure.
Also note: 30 values in a single row may not be the best storage mechanism. Often, it is best to have a table with one value per row.