d29*_*907 0 datetime ssis date-difference
我们假设我有一些这样的日期:
2014-01-23 14:52 (today)
2014-01-22-15:35
2014-01-21 10:35
2014-01-20 09:45
2014-01-19 17:58
2014-01-18 14:05
2014-01-17 13:22
Run Code Online (Sandbox Code Playgroud)
现在我只需要考虑到当天的前5天,所以对我来说他们将是:
2014-01-22-15:35
2014-01-21 10:35
2014-01-20 09:45
2014-01-19 17:58
2014-01-18 14:05
Run Code Online (Sandbox Code Playgroud)
在SSIS中,我在条件拆分任务中编写了下一条指令:
date > DATEADD("DD",-5,GETDATE()) && date < DATEADD("DD",-1,GETDATE())
Run Code Online (Sandbox Code Playgroud)
但是我所拥有的结果取决于我执行工作流程的时间.
所以,例如,如果我在13:42执行它今天(2014-01-23).我不会看到2014-01-22-15:35,因为它是在一整天后考虑小时(13:42),我需要的是看到所有数据在昨天的任何时刻都有一个日期.
我的问题是,我怎么能指出我需要从今天00:00开始的前几天的所有日期?换句话说,如何在不考虑执行时间的情况下计算前5天所有小时的间隔.
小智 5
如果您在SQL中执行此操作,则可以尝试将dateTime强制转换为日期
Declare @today date = getdate()
Declare @now datetime = getdate()
Cast(@now as date) between dateadd("DD",-5,@today) AND dateadd("DD",-1,@today)
Run Code Online (Sandbox Code Playgroud)
如果有帮助,请告诉我?