我有三个表
表1:项目
ItemID | DaysLastSold
表2:列表
ItemID | ListingID
表3:销售额
ListingID | DateItemClosed
我得到了这个查询:
SELECT min(DATEDIFF(day, DateItemClosed, getdate())) as DaysLastSold
from Sales
where QtySold > 0
and ListingID in (SELECT ListingID from Listings where ItemID = 8101 )
我想做的基本上是将这个查询放入Items表中的DaysLastSold列中。因此,当选择该列时,它会使用相邻列中的ItemID重新计算DaysLastSold。
如果您想保留该信息,可以创建一个由计算值和ItemID组成的索引视图。显然,这不会是原始表中的一列。然后,您可以在需要信息时加入此视图。
就我个人而言,我可能会在你需要的时候直接执行。如果你关心性能,请在这里发布执行计划,我们可能会提出一些建议。