1

我有两个名为 BB.BOATBKG 和 BK_BOOKING 的不同表,其中 BB_BOATBKG.BK.KEY =BK_BOOKING.Z_ID 。

我需要在 BB.BOATBKG 中创建一个计算字段,其中计算(预订提前期天数)基本上是

BB_BOATBKG.ORIG.DATE.EXT  - BK.BOOKING.BOOK.DATE.EXT

为此,我创建了一个名为 GetBookingLeadTimeDays 的函数。

CREATE FUNCTION [dbo].[Getbookingleadtimedays] (@ORIGDATE DATE, @BOOKDATE DATE)  
RETURNS INT   
AS  BEGIN  
RETURN ( DATEDIFF(day, @ORIGDATE, @BOOKDATE)  )  
END. 

创建函数后,我在 BB_BOATBKG 中创建了一个计算字段作为

ALTER TABLE  dbo.BB_BOATBKG ADD Calc_booking_lead_time_days  AS dbo.Getbookingleadtimedays ([ORIG_DATE_EXT],[dbo.BK_BOOKING.BOOK_DATE_EXT] )

但它不起作用,并带有错误消息 Invalid column name 'dbo.BK_BOOKING.BOOK_DATE_EXT'

任何人都请帮忙,因为我认为我很难根据来自两个不同表的值创建计算字段。

4

1 回答 1

0

您只需要使用JOIN.

您根据它们的相关性加入它们,您能详细说明吗?

然后,您可以SELECT根据两个相关表中的组合进行任何您喜欢的计算。

鉴于您的架构,我可以提供更多详细信息。

于 2013-05-14T04:28:58.537 回答