Агрегиране на numeric(18, 8) с SUM
води до типа данни numeric(38, 8) .
Как се изчислява полученият тип данни при умножаване на нещо с число може да се намери тук:Precision , мащаб и дължина (Transact-SQL)
Типът данни за вашата константа -1 е numeric(1, 0)
Точността е p1 + p2 + 1 =40
Мащабът е s1 + s2 =8
Максималната точност е 38 и това ви оставя с numeric(38, 6) .
Прочетете повече за това защо е numeric(38, 6) тук:Умножение и деление с числа