使用自动编号更新列

时间:2018-05-08 15:54:36

标签: sql ms-access-2013

我需要弄清楚每个人何时根据不包含连续日期的工作日历完成任务。我知道两个表T1中的数据

Name DaysRemaining  Complete
Joe      3
Mary     2

和T2

Date        Count
6/1/2018
6/8/2018
6/10/2018
6/15/2018

现在,如果Joe还剩3天,我想在今天的T2中计算3条记录并将日期返回到完整列。如果今天是6/1/2018,我希望更新查询返回6/10/2018到Joe的完整列。

我的想法是,我每天都可以使用今天开始的查询更新T2.count,然后自动增量。之后我可以在DaysRemaining和Count上加入T1和T2。我可以做到这一点,但还没有找到一个工作解决方案来更新t2.count与自动增量。有更好的想法吗?我正在使用链接的sharepoint表,因此每次创建一个新字段都不是一个选项。

1 个答案:

答案 0 :(得分:1)

我认为这会奏效:

select t1.*, t2.date
from t1, t2  -- ms access doesn't support cross join
where t1.daysremaining = (select count(*)
                          from t2 as tt2
                          where tt2.date <= t2.date and tt2.date > now()
                         );

这是一个昂贵的查询,在几乎任何其他数据库中都更容易表达和更高效。