要实现我的目标表,我想出的唯一方法是通过6条SQL语句。它们必须按顺序执行,这意味着1、2、3...6。在这个过程中,我使用了5个所谓的“临时/居民表”。在SSIS中有吗?我只想知道我是否可以在SSIS中重用这6个语句。这意味着运行这6条语句的过程流。有可能吗?如果是这样的话,介意指导我怎么做吗?在控制流中包含什么,在数据流中包含什么?
谢谢,
10e5x
发布于 2012-12-11 19:41:00
我怀疑您将问题复杂化了,您可以将所有6条语句放入单个“执行SQL任务”控制流项中,或者将它们全部放入一个存储过程中,并以正确的顺序将SQL语句放入其中,然后通过“执行SQL任务”来执行。
就我个人而言,我会把它们放到一个存储过程中。
数据流用于数据,即移动数据块,而控制流控制操作的顺序,其中一个或多个可能是数据流。
发布于 2012-12-12 17:25:16
您可以使用公用表表达式将6个相互依赖的SQL语句组合成一个语句。例如,我只显示了3个表: C1、C2、C3和最后一个select语句。不要忘记末尾的分号。
WITH C1 AS
(
SELECT Col1,Col2,Col3
FROM Table1
),
C2 AS
(
SELECT Col1, count(Col1) as numOfCol1
FROM C1
GROUP BY Col1
),
C3 AS
(
Select substring(Col1,1,10) as FirstName, substring(Col1,10,10) as LastName, numOfCol1
FROM C2
),
SELECT *
FROM C3
WHERE numofCol1 > 10;https://stackoverflow.com/questions/13817800
复制相似问题