【问题标题】:looping for every row in a table in t-sql循环遍历 t-sql 表中的每一行
【发布时间】:2014-05-12 07:12:57
【问题描述】:

如何在 t-sql 中为表中的每一行循环?我有一个表,WorkOrder 它有两列:name,name2。现在我想要的是 name 列的值,附加在 name2 列上。

例如,我有这一行:

name   |  name2
test   |  test2

我希望将 name 列附加到 name2 列上,以便每一行看起来都像这样。

name   |  name2
test   |  test test2

我该怎么做?谢谢

另一个问题:

如果两列的组合超过了该列的字符数限制怎么办?发生这种情况时,我想忽略该行,并继续更新其他行

【问题讨论】:

  • 您使用的是哪个 RDBMS? SQL Server 还是 mysql?
  • 您要选择它还是更新表格本身?
  • 更新表本身

标签: sql sql-server tsql sql-server-2005


【解决方案1】:

你可以这样做:

UPDATE WorkOrder 
SET name2=name1+' '+name2

【讨论】:

  • @AedzMigraso:是的,它会的。你不需要循环。顺便说一句,如果需要,您可以添加 WHERE 子句。
  • 成功了。我还有一个问题。如果两列的组合超过了该列的字符限制怎么办?发生这种情况时,我想忽略该行,并继续更新其他行
猜你喜欢
  • 2015-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-29
  • 1970-01-01
相关资源
最近更新 更多