我的table1包含DATETIME
,ID
和Status
列。
我会在特定时间后调用我的存储过程,并且我想获取最近48个非周末时间的记录。
我尝试通过为getdate()
的每一天撰写案例来做到这一点。
我想知道最好的方法是什么。
答案 0 :(得分:1)
为了避免周末,您可以使用case
中的where
或其他逻辑。你的逻辑并不是100%明确在周末做什么。但这是一种方法:
where (datename(wk, getdate()) in ('Sunday', 'Monday', 'Tuesday') and datetime >= dateadd(hour, 48 + 48, getdate()) ) or
(datename, wk, getdate()) in ('Wednesday', 'Thursday', 'Friday') and datetime >= dateadd(hour, 48, getdate()) or
(datename , wk, getdate()) in ('Saturday') and datetime >= dateadd(hour, 24 + 48, getdate());