代码之家  ›  专栏  ›  技术社区  ›  farmpapa

使用自动编号更新列

  •  0
  • farmpapa  · 技术社区  · 6 年前

    我需要根据不包括连续日期的工作日历来确定每个人何时完成任务。我知道两个表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条记录,并将日期返回到完整列。如果今天是2018年6月1日,我希望更新查询返回2018年6月10日Joe的完整列。

    我的想法是我可以每天更新T2。使用今天开始的查询计数,然后自动递增。接下来,我可以在白天参加T1和T2的维护和计数。我可以这样做,但还没有找到更新t2的有效解决方案。自动递增计数。还有更好的主意吗?我正在使用链接的sharepoint表,因此每次都不能创建新字段。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Gordon Linoff    6 年前

    我认为这会奏效:

    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()
                             );
    

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