У меня есть таблица рейтинга. Это сводится к:
rating_value created
+2 april 3rd
-5 april 20th
Итак, каждый раз, когда кто-то получает оценку, я отслеживаю это рейтинговое событие в базе данных.
Я хочу создать график истории / времени рейтинга, где рейтинг - это сумма всех рейтингов на данный момент времени на графике.
т.е. Рейтинг человека на 5 апреля может быть select sum(rating_value) from ratings where created <= april 5th
Единственная проблема, связанная с этим подходом, заключается в том, что мне приходится выполнять этот день за днем через интересующий меня интервал. Есть ли какой-то прием для создания промежуточного итога с использованием данных такого типа?
В противном случае, я думаю, что лучший подход - это создать денормализованную таблицу «истории рейтингов» наряду с отдельными рейтингами.