1 column per color is indeed the right solution to your use case, if you need these multiple colors displayed for multiple items, just using Excel.
The “ideal” solution, for a clean “data base”, would be to have a Custom Interface Asset that would parse the data base and the list of colors and would create the proper data feed with nested lists. Something like:
{
"products":[
{
"name":"product 1",
"colors":[
"blue",
"white",
"red"
]
},
{
"name":"product 2",
"colors":[
"brown",
"green"
]
}
]
}
Such a structure would enable you to have a collection representing the colors, nested in the collection of products. Excel can’t generate such a structure, but APIs & custom Interface assets (.NET or JS) can.