【发布时间】:2016-04-14 10:57:25
【问题描述】:
我的 SSIS 项目报告中的日期参数有问题。我需要查询按日期(今天的日期)注册的产品。以下是我正在传递的查询...
SELECT * FROM [Products] WHERE [CreatedDateTime] = @Date
在@Date 参数中,我将值指定为今天的日期,因此在默认值部分中,我传递了这个表达式'=Today()',它获取实际的日期。
现在我遇到的问题是,当我运行此报告时,即使结果在数据库中,它也不会返回任何结果。在运行了一些测试之后,当我意识到 dateTime 存储在我的数据库中的方式与我的 @Date 参数的执行方式不同时。例如:
在我的 Sql 服务器视图中,我有一个 CreatedDateTime 列,以这种格式存储日期:2016-04-14 08:58:07.140
在 SSIS 上,我的 @Date 仅按日期过滤,因此例如它只会在 2016-04-14 之前查询(仅按日期而不是时间),因此不会返回任何结果。
我通过添加一个文本框来按输入的日期进行过滤发现了这一点。当我只输入日期时,不会返回任何结果,但是当我输入日期和时间时,会返回结果。
除了 =Today() 之外,我是否可以在我的 @Date 参数中传递一种方法,该方法适用于我的情况并且仅按日期过滤?
感谢您的宝贵时间。
【问题讨论】: