DECLARE @Data TABLE ( mySet TINYINT NOT NULL, x DECIMAL(38, 10), y DECIMAL(38, 10) ) INSERT @Data SELECT 1, 40.5 , 104.5 UNION ALL SELECT 1, 38.6 , 102 UNION ALL SELECT 1, 37.9 , 100 UNION ALL SELECT 1, 36.2 , 97.5 UNION ALL SELECT 1, 35.1 , 95.5 UNION ALL SELECT 1, 34.6 , 94 UNION ALL SELECT 2, .72, 2.16 UNION ALL SELECT 2, 1.31, 1.61 UNION ALL SELECT 2, 1.95, 1.16 UNION ALL SELECT 2, 2.58, .85 UNION ALL SELECT 2, 3.14, .5 UNION ALL SELECT 3, 3 , 1.5 UNION ALL SELECT 3, 4 , 9.3 UNION ALL SELECT 3, 6 , 23.4 UNION ALL SELECT 3, 10 , 45.8 UNION ALL SELECT 3, 12 , 60.1 UNION ALL SELECT 4, 10 , .95 UNION ALL SELECT 4, 12 , 1.05 UNION ALL SELECT 4, 15 , 1.25 UNION ALL SELECT 4, 17 , 1.41 UNION ALL SELECT 4, 20 , 1.73 UNION ALL SELECT 4, 22 , 2 UNION ALL SELECT 4, 25 , 2.53 UNION ALL SELECT 4, 27 , 2.98 UNION ALL SELECT 4, 30 , 3.85 UNION ALL SELECT 4, 32 , 4.59 UNION ALL SELECT 4, 35 , 6.02 SELECT mySet, dbo.Linear(x, y) AS Info FROM @Data GROUP BY mySet ORDER BY mySet