根据两个不同表中的值计算字段

时间:2013-05-14 04:23:29

标签: sql

我有两个不同的表,名为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] )

但它不起作用并附带错误消息无效的列名'dbo.BK_BOOKING.BOOK_DATE_EXT'

任何人请帮助,因为我认为我发现很难根据两个不同表格中的值创建计算字段。

1 个答案:

答案 0 :(得分:0)

您只需使用JOIN

你根据他们的相关方式加入他们,你能详细说明吗?

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

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