Това, което имате, е скаларна UDF (взема от 0 до n параметри и връща скаларна стойност). Такива UDF обикновено причиняват операция ред по ред на вашата заявка, освен ако не е извикана с постоянни параметри, с точно такова влошаване на производителността, което изпитвате с вашата заявка.
Вижте тук , тук и тук за подробни обяснения на клопките в производителността при използването на UDF.