1. "0" - это, похоже, значит, что товар НЕ ПОКУПАЛИ в этот день (если 0 для столбца sum)
2. Схема БД уже описана в задании, осталось только сделать кодом
(ts_day_start, pm_id, price, sum)
Каждая строка - это событие покупки товара
ts_day_start - таймстемп начала суток UTC+0
pm_id - айдишник товара
price - цена товара на момент покупки (в условных единицах)
sum - потрачено на этот товар по этой цене за эти сутки
3. БД лучше всё же спроектировать, поскольку сгенерированные строки надо где-то хранить (не в памяти же скрипта это делать)