Demasiado codigo ;)
Código SQL:
Ver originalCREATE TABLE #temp
(
id_tipo INT,
nombreindicador VARCHAR(20),
col1 DECIMAL(16,10),
col2 DECIMAL(16,10)
)
INSERT INTO #temp VALUES (1,'Utilidad neta',8593.00,27560.00)
INSERT INTO #temp VALUES (2,'Ventas neta',98895.00,233136.00)
SELECT * FROM #temp
UNION
SELECT 3 AS id_tipo, 'Total' AS nombre_indicador, t1.col1/t2.col1 AS col1, t1.col2/t2.col2 AS col2 FROM #temp AS t1
LEFT JOIN #temp AS t2 ON (t1.id_tipo+1=t2.id_tipo)
WHERE t2.col1 IS NOT NULL
Resultado:
id_tipo nombreindicador col1 col2
1 Utilidad neta 8593.0000000000000000000000 27560.0000000000000000000000
2 Ventas neta 98895.0000000000000000000000 233136.0000000000000000000000
3 Total 0.0868901360028312857070 0.1182142612037608949282