在sql server中映射动态列名 DECLARE@step VARCHAR(25)='15'; 声明@COL VARCHAR(50)=步骤COL@step; 更新表格\u tblName SET@COL=WHERE
我有上面的查询,其中@COL应该是动态的,即步骤1、步骤2、步骤3……步骤18。在sql server中,如果没有If-else条件,如何实现这一点?请尝试以下查询在sql server中映射动态列名 DECLARE@step VARCHAR(25)='15'; 声明@COL VARCHAR(50)=步骤COL@step; 更新表格\u tblName SET@COL=WHERE,sql,sql-server,dynamic-columns,Sql,Sql Server,Dynamic Columns,我有上面的查询,其中@COL应该是动态的,即步骤1、步骤2、步骤3……步骤18。在sql server中,如果没有If-else条件,如何实现这一点?请尝试以下查询 DECLARE @step VARCHAR(25) = '15'; DECLARE @COL VARCHAR(50) = step_col_@step; UPDATE table_tblName SET @COL=<some value> WHERE <condition> 像这样传递变量以形成动态sql查
DECLARE @step VARCHAR(25) = '15';
DECLARE @COL VARCHAR(50) = step_col_@step;
UPDATE table_tblName SET @COL=<some value> WHERE <condition>
像这样传递变量以形成动态sql查询
DECLARE @COL VARCHAR(50) = 'step_col_'+@step
DECLARE@step VARCHAR(25)='15';
声明@COL VARCHAR(50)='step\u COL\u'+@step
exec('UPDATE table_tblName SET'+@COL+'=WHERE')
声明@step VARCHAR(25)='15';
声明@COL VARCHAR(50)='step\u COL\uu'+@step;
声明@String VARCHAR(500)=“”
SET@String='updatetable_tblName SET'+@COL+'''=其中
'
EXEC(@String)
声明@step VARCHAR(25)='15';
声明@COL VARCHAR(50)
设置@COL='step_COL'+@step;
更新表格\u tblName SET@COL=WHERE
DECLARE@COL VARCHAR(50)='step\u COL\uu'+@step考虑添加一个简短的解释,说明上述方法如何/为什么有助于解决问题,以帮助其他人。从…起
DECLARE @step VARCHAR(25) = '15';
DECLARE @COL VARCHAR(50) = 'step_col_'+@step
exec ('UPDATE table_tblName SET '+@COL+'=<some value> WHERE <condition>')
DECLARE @step VARCHAR(25) = '15';
DECLARE @COL VARCHAR(50) = 'step_col_'+@step;
DECLARE @String VARCHAR(500) = ''
SET @String = 'UPDATE table_tblName SET '''+@COL+''' = <some value> WHERE
<condition>'
EXEC (@String)
DECLARE @step VARCHAR(25) = '15';
DECLARE @COL VARCHAR(50)
SET @COL = 'step_col'+@step;
UPDATE table_tblName SET @COL=<some value> WHERE <condition>