我的Statistic
表包含这些字段Id
UserId
DateStamp
Data
数据库中还有User
表,其中包含CreditsLeft
(int)字段。我需要创建一个函数(让我们命名为FindNewRecordsAndUpdate
),它将从我的应用程序每10分钟读取一次Statistic
表,并根据找到的新CreditLeft
个记录的数量减少Statistic
字段指定用户。
我主要担心的是,下次我如何在FindNewRecordsAndUpdate
字段中查找新记录并跳过已计算的记录时执行Statistic
功能?我可以在Statistic
中添加Counted(bool)字段,并为已经“使用过”的记录设置True但是也许有更好的解决方案withotu添加新字段?
答案 0 :(得分:0)
至少3个其他选项:
使用trigger。因此,当行插入统计表时,余额是用户自动更新
根据需要对统计表执行aggregate以获取SUM(数据)
使用indexed view在第2点“预先计算”SUM
就个人而言,我会选择第2点(以及第3点,具体取决于查询频率),以避免在User表中使用非规范化数据。