Try this:DECLARE @InsCode VARCHAR(3);IF NOT EXISTS(SELECT * FROM YourTable WHERE InsCode = @InsCode) SELECT InsCode, LowTemp, HighTemp, HighTemp - LowTemp AS Difference FROM (SELECT @InsCode AS InsCode, ufn_GetDefaultLowTemp() AS LowTemp, ufn_GetDefaultHighTemp() AS HighTemp) AS T;ELSE SELECT InsCode, LowTemp, HighTemp, Difference FROM (SELECT InsCode, LowTemp, HighTemp, Difference, ROW_NUMBER() OVER(PARTITION BY InsCode ORDER BY Difference DESC, LowTemp DESC) AS row_num FROM (SELECT InsCode, LowTemp, HighTemp, HighTemp - LowTemp AS Difference FROM YourTable) AS T) AS T WHERE InsCode = @InsCode AND row_num = 1
Here @InsCode to be replaced by your procedure parameter.