У меня есть таблица с именем stats
player_id team_id match_date goal assist`
1 8 2010-01-01 1 1
1 8 2010-01-01 2 0
1 9 2010-01-01 0 5
...
Я хотел бы знать, когда игрок достигнет определенного этапа (например, 100 голов, 100 передач, 500 голов ...)
Я также хотел бы знать, когда команда достигает вехи.
Я хочу знать, какой игрок или команда достигают 100 голов первым, вторым, третьим ...
Я думал использовать триггеры с таблицами для накопления итогов.
Таблица Таблица player_accumulator (и team_accumulator) будет
player_id total_goals total_assists
1 3 6
team_id total_goals total_assists
8 3 1
9 0 5
Каждый раз, когда строка вставляется в таблицу статистики, триггер вставляет / обновляет таблицы player_accumulator и team_accumulator.
Этот триггер также может проверить, достиг ли игрок или команда вехи в таблице этапов, содержащей цифры
milestone
100
500
1000
...
Таблица player_milestone будет содержать веху, достигнутую игроком:
player_id stat milestone date
1 goal 100 2013-04-02
1 assist 100 2012-11-19
<ч />
Есть лучший способ реализовать "веху"?
Есть самый простой способ без триггеров?
Я использую PostgreSQL