Promedio ponderado en T-SQL (como el SUMPRODUCT de Excel)

Estoy buscando una manera de derivar un promedio ponderado de dos filas de datos con el mismo número de columnas, donde el promedio es el siguiente (tomando prestada la notación de Excel):

(A1*B1)+(A2*B2)+...+(An*Bn)/SUM(A1:An)

La primera parte refleja la misma funcionalidad que la función SUMPRODUCT () de Excel.

Mi problema es que necesito especificar dinámicamente qué fila se promedia con los pesos, y de qué fila provienen los pesos, y un rango de fechas.

EDITAR: Esto es más fácil de lo que pensé, porque Excel me estaba haciendo pensar que necesitaba algún tipo de pivote. Mi solución hasta ahora es así:

select sum(baseSeries.Actual * weightSeries.Actual) / sum(weightSeries.Actual)
from (
    select RecordDate , Actual 
    from CalcProductionRecords 
    where KPI = 'Weighty'
) baseSeries inner join (       
    select RecordDate , Actual 
    from CalcProductionRecords 
    where KPI = 'Tons Milled'   
) weightSeries on baseSeries.RecordDate = weightSeries.RecordDate

Respuestas a la pregunta(3)

Su respuesta a la pregunta