如何使用循环将数据增量更新到另一个表中?

mohan111

我有一个查询是这样的:

CREATE TABLE #Employee
(Id INT, Name NVARCHAR(100), Status TINYINT)
GO
INSERT INTO #Employee ( Id, Name, Status)
Values (1, 'Basavaraj Biradar', 0),
        (2, 'Shree Biradar', 0),
        (3, 'Kalpana Biradar', 0)
GO

DECLARE @LoopCounter INT = 1, @MaxEmployeeId INT = 10 , 
        @EmployeeName NVARCHAR(100)

WHILE(@LoopCounter <= @MaxEmployeeId)
BEGIN
   SELECT @EmployeeName = (Name)
   FROM #Employee WHERE Id = @LoopCounter


   SET @LoopCounter  = @LoopCounter  + 1     
    PRINT @EmployeeName     
END

给出结果:

Basavaraj Biradar
Shree Biradar
Kalpana Biradar
Kalpana Biradar
Kalpana Biradar
Kalpana Biradar
Kalpana Biradar
Kalpana Biradar
Kalpana Biradar
Kalpana Biradar

预期产量:

1 Basavaraj Biradar
2 Shree Biradar
3 Kalpana Biradar
4 Basavaraj Biradar
5 Shree Biradar
6 Kalpana Biradar
7 Basavaraj Biradar
8 Shree Biradar
9 Kalpana Biradar
10 Basavaraj Biradar
11 Shree Biradar
12 Kalpana Biradar
菲利克斯·帕米坦(Felix Pamittan)

无需WHILE循环或即可完成此操作CURSOR您只需要一个理货单

SQL小提琴

DECLARE @MaxEmployeeId INT = 10;

DECLARE @N INT; 
SELECT @N = CEILING(@MaxEmployeeId/(COUNT(*)*1.0)) FROM #Employee;

;WITH E1(N) AS(
    SELECT 1 FROM(VALUES (1),(1),(1),(1),(1),(1),(1),(1),(1),(1))t(N)
),
E2(N) AS(SELECT 1 FROM E1 a CROSS JOIN E1 b),
E4(N) AS(SELECT 1 FROM E2 a CROSS JOIN E2 b),
CteTally(N) AS(
    SELECT TOP(@N) ROW_NUMBER() OVER(ORDER BY(SELECT NULL))
    FROM E4
),
CteFinal AS(
    SELECT *, Rn = ROW_NUMBER() OVER(ORDER BY N, Id) 
    FROM #Employee e
    CROSS JOIN CteTally t
)
SELECT Rn, Name FROM CteFinal WHERE Rn <= @MaxEmployeeId ORDER BY Rn

如果只是重复记录的次数:

SQL小提琴

DECLARE @RepeatTimes INT = 4
;WITH E1(N) AS(
    SELECT 1 FROM(VALUES (1),(1),(1),(1),(1),(1),(1),(1),(1),(1))t(N)
),
E2(N) AS(SELECT 1 FROM E1 a CROSS JOIN E1 b),
E4(N) AS(SELECT 1 FROM E2 a CROSS JOIN E2 b),
CteTally(N) AS(
    SELECT TOP(@RepeatTimes) ROW_NUMBER() OVER(ORDER BY(SELECT NULL))
    FROM E4
)
SELECT 
    Rn = ROW_NUMBER() OVER(ORDER BY N, Id), e.Name
FROM Employee e
CROSS JOIN CteTally t
ORDER BY Rn

结果:

| Rn |              Name |
|----|-------------------|
|  1 | Basavaraj Biradar |
|  2 |     Shree Biradar |
|  3 |   Kalpana Biradar |
|  4 | Basavaraj Biradar |
|  5 |     Shree Biradar |
|  6 |   Kalpana Biradar |
|  7 | Basavaraj Biradar |
|  8 |     Shree Biradar |
|  9 |   Kalpana Biradar |
| 10 | Basavaraj Biradar |
| 11 |     Shree Biradar |
| 12 |   Kalpana Biradar |

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用循环将数据从另一个表更新到另一个表,使用 excel vba

来自分类Dev

使用来自另一个表的外键将数据插入或更新到表中

来自分类Dev

使用MySQL中的rand()将表中的值更新到另一个表

来自分类Dev

如何将表从一个数据库更新到另一个?

来自分类Dev

Oracle数据库,将数据从一个表更新到另一个表

来自分类Dev

SQL Server:将丢失的数据从一个表插入/更新到另一个表

来自分类Dev

将字符串中的值更新到另一个表

来自分类Dev

使用实体框架将新插入的记录 ID 更新到另一个表

来自分类Dev

如何在MySQL中将数据从一个表替换和更新到另一个表

来自分类Dev

如何在MySQL中将数据从一个表替换和更新到另一个表

来自分类Dev

将特定行从一个表更新到另一个表

来自分类Dev

如何使用另一个表中的数据更新Python中的Oracle表

来自分类Dev

如何使用另一个表中的值更新数据库表

来自分类Dev

如何使用另一个数据库表中的值更新表

来自分类Dev

在另一个数据库中重新创建表时,将数据插入/更新到表中

来自分类Dev

从tmp数据库中的表插入并更新到另一个数据库中的表

来自分类Dev

从tmp数据库中的表插入并更新到另一个数据库中的表

来自分类Dev

如何使用 for each 循环将信息传输到另一个工作表中

来自分类Dev

如何使用一个按钮将值插入表并在另一个表中更新值?

来自分类Dev

如何从另一个活动创建的数据库中获取数据/无法将数据更新到数据库(Android Studio,SQLite)

来自分类Dev

使用alembic获取表值并更新到另一个表。

来自分类Dev

将所有mysql记录从一个表更新到另一个表

来自分类Dev

如何使用另一个表更新表

来自分类Dev

SQL根据某种条件从另一个表中插入/更新到一个表中

来自分类Dev

使用SAS中另一个表中的数据更新oracle表

来自分类Dev

如何插入库存数量并更新到另一个表?

来自分类Dev

Postgresql-使用特定数据更新一个表后如何更新另一个表

来自分类Dev

使用选择更新到另一个表的语句

来自分类Dev

使用MariaDB循环将一个表中的行与另一个表中的值插入

Related 相关文章

  1. 1

    使用循环将数据从另一个表更新到另一个表,使用 excel vba

  2. 2

    使用来自另一个表的外键将数据插入或更新到表中

  3. 3

    使用MySQL中的rand()将表中的值更新到另一个表

  4. 4

    如何将表从一个数据库更新到另一个?

  5. 5

    Oracle数据库,将数据从一个表更新到另一个表

  6. 6

    SQL Server:将丢失的数据从一个表插入/更新到另一个表

  7. 7

    将字符串中的值更新到另一个表

  8. 8

    使用实体框架将新插入的记录 ID 更新到另一个表

  9. 9

    如何在MySQL中将数据从一个表替换和更新到另一个表

  10. 10

    如何在MySQL中将数据从一个表替换和更新到另一个表

  11. 11

    将特定行从一个表更新到另一个表

  12. 12

    如何使用另一个表中的数据更新Python中的Oracle表

  13. 13

    如何使用另一个表中的值更新数据库表

  14. 14

    如何使用另一个数据库表中的值更新表

  15. 15

    在另一个数据库中重新创建表时,将数据插入/更新到表中

  16. 16

    从tmp数据库中的表插入并更新到另一个数据库中的表

  17. 17

    从tmp数据库中的表插入并更新到另一个数据库中的表

  18. 18

    如何使用 for each 循环将信息传输到另一个工作表中

  19. 19

    如何使用一个按钮将值插入表并在另一个表中更新值?

  20. 20

    如何从另一个活动创建的数据库中获取数据/无法将数据更新到数据库(Android Studio,SQLite)

  21. 21

    使用alembic获取表值并更新到另一个表。

  22. 22

    将所有mysql记录从一个表更新到另一个表

  23. 23

    如何使用另一个表更新表

  24. 24

    SQL根据某种条件从另一个表中插入/更新到一个表中

  25. 25

    使用SAS中另一个表中的数据更新oracle表

  26. 26

    如何插入库存数量并更新到另一个表?

  27. 27

    Postgresql-使用特定数据更新一个表后如何更新另一个表

  28. 28

    使用选择更新到另一个表的语句

  29. 29

    使用MariaDB循环将一个表中的行与另一个表中的值插入

热门标签

归档