我正在尝试循环执行一些数据流任务。对于每个循环,它将日期变量增加1(存储在变量中)。在数据流任务中,我有一个lookup
任务,该任务应该使用作为sql语句的一部分递增的变量,如下所示:
Select
*
From
Table
Where
Date = @[User::Date]
但这不起作用,我收到了这个错误:
Must declare the scalar variable "@".
尝试将此变量放入lookup
的sql中的任何帮助都将非常感激。我还尝试在lookup
中使用参数,但也会收到错误消息,说明参数不足
答案 0 :(得分:3)
在查找之前使用派生列,并将新列的值设置为变量。然后在查找转换中,您可以使用新的派生列和表中的日期列进行直接映射,并查找预期的列。
在您的情况下,由于您的要求的性质,您似乎需要使用SQL。因此,在将缓存模式更改为部分缓存后,转到高级选项卡并将SQL更改为 -
Select *
From Table
Where Date <> ?
单击参数按钮并将派生列映射到Parameter0。 因此,查找匹配输出现在基本上会为您提供与变量@ [User :: Date]设置的派生列不匹配的所有日期。
答案 1 :(得分:0)