【问题标题】:Update records one by one using loop in SQL Server在 SQL Server 中使用循环一一更新记录
【发布时间】:2018-10-01 20:55:24
【问题描述】:

我的 SQL 表如下所示

**name  department  fee_paid    id**
----------------------------------------
Ajay    ECE          10000     1
Ranjit  EEE          20000     2
----------------------------------------

现在我希望填写如下数据

**name  department  fee_paid    id**
----------------------------------------
Name1    Name1       10000     1
Name2    Name2       20000     2
----------------------------------------

需要用 while 循环更新这个

【问题讨论】:

标签: sql sql-server sql-server-2008 sql-server-2012 sql-server-2008-r2


【解决方案1】:

为什么要选择loop

这也可以通过update进行简化

update table 
set name = concat('name', id),
    department  = concat('name', id);

编辑(戈登):

SQL Server 更通用的解决方案是:

update table 
set name = 'name' + cast(id as varchar(255)),
    department  = 'name' + cast(id as varchar(255));

CONCAT() 直到 SQL Server 2012 才引入,并且该问题明确包含 SQL Server 2008 作为标记。

【讨论】:

    猜你喜欢
    • 2023-03-27
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多