Допустим есть таблица products с полями id,name,price,created_at,updated_at . Нужно мониторить как изменялась к примеру цена товара. Логика такая : лежат в бд товары , время от времени в базу будет добавляться тот самый товар(название то самое) и возможно с другой ценой . Как лучше всего записывать изменения в цене, чтобы потом было удобно работать с ней (сортировать, группировать товары по ней и т.д)?
Создать таблицу product_price_changes, где записывать предыдущие цены? и в перспективе может понадобиться мониторить изменения еще других полей ,тогда на каждое поле нужна отдельная таблица получается .
Или добавлять в ту же таблицу products данные о продукте ,но тогда может получится что таблице могут быть почти одинаковы записи(1,товар1,100,created_at,updated_at) и (2,товар1,110,created_at,updated_at) и это по-моему не совсем правильно .
подскажите , как правильно спроектировать бд в таком случае?
Таблица лога. id, table_name, field_name, changed_at, old_value, new_value
Продвижение своими сайтами как стратегия роста и независимости