計算列を作成しようとしましたが、列の 1 つが別のテーブルにあるため、UDF を作成する必要があることを理解しています。ここにERDへのリンクがあるので、関係を確認できます
http://imageshack.us/photo/my-images/23/databaseassignment2new.png/
これが私がやろうとしていることです。
CheckOutDate + loanperiod = lastreturndate
So the result would look something like this
Checkoutdate loanperiod lastreturndate
2012-1-01 3 2012-4-01
これは私がこれまでに持っているものです
CREATE FUNCTION dbo.Getvaludates( @laastreturndate DATETIME)
RETURNS DATETIME
AS
BEGIN
DECLARE @lastReturndate DATETIME
SELECT @lastReturndate= dateadd(month,loanperiod,CheckOutDate)
FROM [Loan] I
JOIN [Item] L ON I.barcode = L.barcode
JOIN [Return] R ON I.barcode = R.barcode
WHERE I.barcode = @lastreturndate
RETURN @lastReturndate
END
GO
そして、これを計算列に追加する必要があります
ALTER TABLE dbo.Item
ADD lastreturndate AS dbo.Getvaluedate(lastreturndate)