SQL 如何从其他 table 列更新基于 table 的名称 tablename

SQL how to update table based name tablename from other table column

在将生产数据库迁移到测试环境时,我需要在 table 秒后更新一个值。 table 的名称可以在另一个 table 中找到。我怎样才能做到这一点?

我的意思是:

for each value$ in select replace(tablename,' ','') from table1

update value$ set replace(column1,'A','B')

它看起来像一个嵌套的 SQL 语句。

您需要为此构建一些动态 sql。我更喜欢一次性构建并作为一个整体执行:

declare @sql varchar(max) = '' 
select @sql += '
    update ' + QUOTENAME(replace(tablename,' ','')) + ' 
        set column1 = replace(column1,''A'',''B'')'      
from table1

exec (@sql)