Вот упрощенная версия двух таблиц, которые я настроил следующим образом:
Users (Name(varchar), DateAdded(date))
Costs (Month(date), TotalUsers(int))
Теперь, когда я вставляю, обновляю или удаляю DateAdded в таблице Users, я хочу обновить соответствующуюстроки в таблице затрат.Поэтому, если я удаляю строку в таблице users с января 2011 года, все строки в таблице Costs, имеющие значение Date позднее января 2011 года в клоне Month, должны иметь уменьшенное поле TotalUsers.Например, в этом случае строки с февраля 2011 и марта 2011 года должны уменьшить свои TotalUsers, но строка с декабря 2010 не будет.
Обычно, когда я меняю строку в Users, я хочу изменить каждую строку в стоимости так, чтобы ее поле TotalUsers представляло сумму всех дат в таблице Users перед ее собственной.В настоящее время я использую триггер, настроенный на удаление вставки, но я не уверен, что лучший способ обновить таблицу затрат без использования курсора.