gpt4 book ai didi

sql-server - 一次循环5条记录并将其分配给变量

转载 作者:行者123 更新时间:2023-12-03 02:20:19 25 4
gpt4 key购买 nike

我有一个包含 811 条记录的表。我想一次获取五个记录并将其分配给变量。下次当我在 SSIS 中运行 foreach 循环任务时,它将循环另外五个记录并覆盖变量。我尝试过使用光标进行操作,但找不到解决方案。任何帮助将不胜感激。例如,我有这样的 table

ServerId ServerName
1 Abc11
2 Cde22
3 Fgh33
4 Ijk44
5 Lmn55
6 Opq66
7 Rst77
. .
. .
. .

我希望查询应采用如下前五个名称并将其分配给变量

ServerId ServerName
1 Abc11
2 Cde22
3 Fgh33
4 Ijk44
5 Lmn55

然后下一个循环采用另外五个名称并覆盖变量值,依此类推,直到消耗完最后一条记录。

最佳答案

考虑到 ltn 的答案,这就是您如何实现限制 SSIS 中的行。

设计看起来像

enter image description here

第 1 步:创建变量

  Name       DataType 
Count int
Initial int
Final int

第 2 步:对于第一个执行 SQL 任务,编写 SQL 来存储计数

  Select count(*) from YourTable

在此任务的常规选项卡中,选择结果集作为单行

在 ResultSet 选项卡中将结果映射到变量

  ResultName       VariableName
0 User::Count

第 3 步:在 For 循环容器中输入如下所示的表达式

enter image description here

第 4 步:在 For 循环内拖动执行 SQL 任务并写入表达式 enter image description here

在参数映射中映射初始变量

  VariableName    Direction   DataType   ParameterName   ParameterSize
User::Initial Input NUMERIC 0 -1

结果集选项卡

  Result Name     Variable Name
0 User::Final

在 DFT 中,您可以编写 SQL 来获取特定行

enter image description here

单击“参数”并选择变量 INITIALFINAL

关于sql-server - 一次循环5条记录并将其分配给变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14016596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com