How to store multiple values in a column in database?
While there are different approaches to manage your problem, the simplest way to do it is following the most conventional relational and normalised way, which is separating Campaigns, Programs and Assets as different tables. You can specify relationships between tables like "has" or "belongs to" with foreign keys that references other table rows.

You can read an introduction about the relational model here: http://en.wikipedia.org/wiki/Relational_model

When querying complete information, you have to use the JOIN clause ( http://en.wikipedia.org/wiki/Join_(SQL) ) to merge results from different tables, for example:

SELECT * FROM campaign 
JOIN program ON campaign.id = program.campaign_id 
JOIN asset ON program.id = asset.program_id