this might be a stupid method.Declare @fun table([Month] varchar(3), Vendor# varchar(5), Category varchar(7), Month_Total int, YTD_Total int)insert into @fun select'Jan','A0055','Flatbed', 6, 10 union all select'Jan','A0055','Tow', 4, 10 union all select'Jan','A0055','Light', 0, 0 union all select'Jan','A1111','Flatbed', 20, 22 union all select'Jan','A1111','Tow', 0, 0 union all select'Jan','A1111','Light', 22, 0select *, sum(YTD_Total)over (partition by [Month], Vendor#)/sum(case when YTD_Total <> 0 then 1 else 0 END) over (partition by [Month], Vendor#)from @fun