我有一个代表合同参数的表格 - 包括它们通过附录随时间的变化。第一个附录是一个“特殊”附录,表示合同首次签署时的参数。
表格应如下所示:
ID ProjectID BeginDate DeadlineMonths DeadlineDate
1 20 20-12-2006 24 <computed= 20-12-2006 + 24 months>
2 23 12-03-2007 12 <computed= 12-03-2007 + 12 months>
3 20 06-09-2007 36 <computed= **20-12-2006** + 36 months>
ProjectID 是 Projects 表的 FK,其主键也称为 ProjectID。
我希望 DeadlineDate 是一个计算字段,计算如下:
DeadlineDate COMPUTE BY ((
select first 1 AddMonth(contract.BeginDate, DeadlineMonths)
from addendums contract
where contract.projectid = projectid
order by contract.BeginDate ))
问题是contract.projectid = projectid
第二个 ProjectID 必须引用当前正在计算的行,而不是 select 语句中的当前行(与 相同contract.projectid
)。
我正在使用火鸟。由于使用数据库的应用程序中的 ORM 问题,我需要表中的列而不是 SELECT 语句中的列。