В таблице Health Health у меня есть строка для ProteinUSRDA, которая имеет функцию ({weight}/2.2)*.8
. Я создал скалярную функцию, которая принимает profileid (чтобы получить вес) и NutritionFunctionID, и он вернёт (289/2.2)*.8
для выбранного пользователя как varchar (100). Было бы здорово, если бы я мог заставить функцию возвращать вычисленные результаты из. Есть ли способ?
CREATE FUNCTION [dbo].[MyProteinRDA]
(
-- Add the parameters for the function here
@ProfileID int,
@FID int
)
RETURNS varchar(100)
AS
BEGIN
return (Select Replace(FFunction,'{Weight}',(Select weight from profile where profileid = @ProfileID)) from HealthFunctions where FID = 4);
END
если я использую exec для визуализированной функции, она работает, но я не могу найти способ вернуть ее из функции SQL.