A family of Microsoft relational database management systems designed for ease of use.
The main problem I am having is that I need to pull ALL the data, not just what matches up. Most stores will not run all 6 types of advertising at once, so when I pull the query a majority of my data is missing.
That sounds more like a LEFT OUTER JOIN form tblStoreList to each of the others. A full outer join is one which works in both directions simultaneously, which I don't think is what you are looking for here. A LEFT OUTER JOIN would return the base data, but you will almost certainly get duplication, as not all referencing tables will have exactly the same number of rows per store per week.
John's suggestion of a UNION ALL query is more likely to give you what you want, in which each part of the UNION ALL operation sums the impressions for a specific type of advertising medium per store, then using this as the basis for a crosstab query. In each part of the UNION ALL operation you'd return the type of medium in a column as a constant, which would then be the 'column headings' for the crosstab query, while the StoreID and Date would be the 'row headings'. The total number of impressions in the last column would simply be a summation of the values in the impressions column returned by the UNION ALL query.