1

我能够运行查询并从创建之日起更新天数。但是我想排除周末,只是周一到周五。

例子:

UPDATE [Table1] SET [Table1].Days = DATE() - [Table1].DateCreated WHERE [Table1].Password = True AND [Table1].Complete = FALSE;

这会将天数更新为从创建日期到当前日期的值,即 1、2、3 等。但是我需要它来排除周末。我不经常运行查询,但我想创建这个查询。

请帮忙,谢谢。

4

1 回答 1

0

如果您将从 Access 会话中运行查询,则可以使用 VBA 用户定义函数来计算两个日期之间的工作日数。

例如,考虑WorkingDays()Access Web 中的函数:计算工作日数。如果我正确理解您的查询,我认为这可能会满足您的要求:

UPDATE [Table1]
SET [Table1].Days = WorkingDays([Table1].DateCreated, DATE())
WHERE [Table1].Password = True AND [Table1].Complete = FALSE;

在同一页面上,您可以找到一个WorkingDays2()功能,如果有用,您可以将假期从工作日计数中排除。不过,您需要为您的假期设置一张桌子。

如果您将在 Access 会话之外执行此操作,例如从经典 ASP 或 Dot.Net,您将无法在查询中使用用户定义的函数。

于 2012-04-25T17:37:45.860 回答