Vous pouvez envelopper votre requête dans la fonction comme celle-ci (elle A pour renvoyer une valeur) :
CREATE FUNCTION dbo.SumIt(@Key1 varchar(max))
returns float
as
begin
return (select sum(UTOTALWBUD) from
CONTACT1 inner join
CONTACT2 on
CONTACT1.ACCOUNTNO=CONTACT2.ACCOUNTNO
where [email protected]
group by KEY3)
END
Et utilisez cette fonction à la place avec le champ calc - quelque chose comme ceci :
alter table ManagerTaLog add WeeklyBudget as dbo.SumIt(Key1)
REMARQUE
que ce sera le tueur de performances pour des requêtes comme celle-ci :
select * from ManagerTaLog
Vous devez modifier votre fonction de telle manière, c'est-à-dire accepter PAS varchar
valeur, mais NVARCHAR(255)
- du même type que la colonne Manager. Essayez-le.