Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Especificando o nome da coluna como um parâmetro na instrução SELECT?


Você precisa usar sql dinâmico:
  • crie sua consulta SQL dinâmica (dê uma olhada na variável @SQL no exemplo abaixo)
  • use o parâmetro de saída para recuperar o valor do sql dinâmico (dê uma olhada em @intParam e @intParam_out no exemplo abaixo)
  • execute sql dinâmico usando sp_executesql
DECLARE @intParam INT
DECLARE @ColName VARCHAR(64)

SET @ColName='intcolumn'

DECLARE @SQL NVARCHAR(1000)
SET @SQL = 'SELECT @intParam_out = ' + @ColName + ' FROM myTable'
exec sp_executesql @SQL, N'@intParam_out int OUTPUT', @intParam_out = @intParam OUTPUT