Проблема, с которой вы столкнулись, связана с отсутствием нормализации.Всякий раз, когда вам нужна функция значений столбцов других таблиц, вы не должны хранить ее в столбце таблицы - вы должны вычислять ее по требованию как часть запроса, который требует эту информацию.Вы можете упростить это с помощью встроенной табличной функции (TVF), возвращающей таблицу с одним или несколькими столбцами.
В противном случае вам придется вычислять и сохранять результат во время вставок, что приводит к избыточности данныхи возможность несогласованного просмотра ваших данных, если какой-либо из столбцов, из которых вычисляется значение, изменяется или его строка удаляется.
Бывают случаи, когда такая избыточность добавляется посредством денормализации, но это должно быть толькоЭто делается в худшем случае, когда профилирование базы данных по сценариям реального мира заставляет вас двигаться в этом направлении.Если вы идете по этому пути, обязательно добавьте шаги, обеспечивающие целостность вашей базы данных после любой транзакционной операции.