我有一个 select 语句,我想将它转换为 table 中所有具有 name 的列的更新语句Variable[N]
。
例如,我想做这些事情:
- 我希望能够将下面的 SQL 转换为更新语句。
- 我有
n
名为 的列variable[N]
。下面的示例仅更新 columnvariable63
,但我想在不知道我提前有多少列的情况下动态地对所有具有名称variable1
的列运行更新。此外,在下面的示例中,我将更新的结果放入. 如果可能的话,我实际上想用结果更新相应的变量列,在下面的示例中。variableN
variable[N]
NewCol
variable63
我想要一个包装器循环遍历列variable1
并variableN
在所有这些列上执行相同的相应更新操作:
SELECT
projectid
,documentid
,revisionno
,configurationid
,variable63
,ISNULL(Variable63,
(SELECT TOP 1
variable63
FROM table1
WHERE
documentid = t.documentid
and projectid=t.projectid
and configurationid=t.configurationid
and cast(revisionno as int) < cast(t.revisionno as int)
AND Variable63 is NOT NULL
ORDER BY
projectid desc
,documentid desc
,revisionno desc
,configurationid desc
)) as NewCol
FROM table1 t;