【发布时间】:2016-02-20 14:24:26
【问题描述】:
我创建了一个查询来获取StartDate 之前两天和EndDate 之后两天之间的员工。它适用于周二和周四的StartDate。如果这些日子落在周五到周一,它将无法正常工作。我不想在周六和周日计算。
这是我的查询:
select
FirstName,
LastName,
StartDate,
EndDate
from
Students
where
StartDate > GetDate()-2
AND EndDate < GetDate() +2
如何将其更改为仅计算工作日?
非常感谢!
【问题讨论】:
-
如果
GETDATE()是周五,您想查看下周一或周二结束的学生吗? -
哇,我还没想过这个。我的主要观点是列出所有 StartDate 距离今天不到 2 天和今天之后 2 天的学生,不包括周末(周六和周日)。谢谢。
-
所以,只是为了确认:周末开始的学生永远不会被您的查询列出,无论它在哪一天运行;您的查询将返回三天(如果您在周一或周五运行查询)、四天(如果您在周二或周四运行)或五天(如果您在周三运行)的学生?
-
哦,我从周一到周五每天早上都运行查询。我正在尝试向当前日期前 2 天和后 2 天的所有学生发送警报消息。如果学生周一结束,他应该在上周五收到此消息。
标签: sql sql-server