我试图在SSIS中执行此操作(但这似乎并不简单)以这种方式将数据从源复制到目标:
copy->(select from source.TableA where source.CallID > (select max(destination.TableA.CallID) from destination.TableA) -> to destination
所以我试图根据目的地的聚合Max(CallID)从源复制一些增量数据。
答案 0 :(得分:1)
在SSIS中,这通常分两步完成。首先,在包级别创建一个作用域的变量。使用执行SQL任务运行max(destination.TableA.CallID)查询并将该值填充到变量中。
然后,在数据流中,使用参数查询并将变量传入参数。 从source.TableA中选择source.CallID> ? (OLE DB源)
网上有很多例子。
修改强>:
以下是设置变量的说明:
http://dataqueen.unlimitedviz.com/2012/08/how-to-set-and-use-variables-in-ssis-execute-sql-task/
及其使用说明:
http://bisherryli.wordpress.com/2011/03/06/ssis-pass-a-variable-to-a-ole-db-source-in-a-data-flow/