0

我有三张桌子

表 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。

4

1 回答 1

0

如果您想保留该信息,您可以创建一个由计算值和 ItemID 组成的索引视图。显然,这不会是您原始表格中的一列。然后,您可以在需要信息时加入此视图。

就我个人而言,我可能会在你需要的时候内联。如果您担心性能,请在此处发布执行计划,我们也许可以提出一些建议。

于 2012-08-31T20:35:30.290 回答