通过TSQL生成动态更新语句

时间:2012-03-22 09:34:32

标签: tsql

我有一个包含多列的表格:

col1
col2
col3
coln....

我需要生成如下所示的动态UPDATE语句,该语句将在生产中用于批量更新:

UPDATE TableA
SET TableA.ColA = ValueOfCol2
WHERE
   TableA.ColB='A'

有人可以分享一个TSQL脚本,如上所述生成n个UPDATE语句吗?

谢谢

1 个答案:

答案 0 :(得分:0)

除非我误解了你的问题,否则你的示例代码会起作用:

UPDATE [updateDemo] SET [updateDemo].[col2] = [updateDemo].[col3] WHERE [col4] = 'A'

这是基于你的表是这样的假设:

col1 | col2 | col3 | col4
1      P      Z      A
2      Y      Z      A
3      K      S      V

以上更新查询将导致(方括号中的更改):

col1 | col2 | col3 | col4
1      [Z]    Z      A
2      [Z]    Z      A
3      K      S      V