मुझे पता है कि यह उत्तर दो साल देर से आता है, लेकिन सिर्फ किसी की मदद करने के लिए जो इस पोस्ट को गुगल करता है और पाता है:
उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन को परिभाषित करना और इसे गणना मूल्य के रूप में उपयोग करना पूरी तरह से कानूनी है। इस फ़ंक्शन में अन्य तालिकाओं के चुनिंदा कथन हो सकते हैं।
CREATE FUNCTION dbo.getAdViews(@packageId int)
RETURNS INT
AS
BEGIN
declare @bav int
select @bav = BaseAdViews from Packages where PackageId = @packageId
RETURN @bav
END
फिर अपने परिकलित कॉलम में, बस अभिव्यक्ति का प्रयोग करें dbo.getSumAdViews(PackageId)+MediaSpend
इस प्रकार:
CREATE TABLE [dbo].[Orders](
[OrderId] [int] IDENTITY(1,1) NOT NULL,
[PackageId] [int] NOT NULL,
[MediaSpend] [int] NULL,
[TotalAdViews] AS dbo.getAdViews(PackageId)+MediaSpend
) ON [PRIMARY]