可能的重复:
SQL:根据变量选择动态列名 https://stackoverflow.com/questions/5637983/sql-select-dynamic-column-name-based-on-variable
我有以下简单的select
陈述:
DECLARE @value varchar(10)
SET @value = 'intStep'
SELECT @value FROM dbo.tblBatchDetail
我努力了
SELECT CAST(@value AS varchar(10)) FROM dbo.tblBatchDetail
我得到的所有清单intstep
QUESTION:我可以将变量作为列名传递给此语句吗?或者最好的方法是什么
我正在使用 SQL Server 2008 (9.0 RTM)
这将是一个存储过程
提前致谢
您不能使用变量名来绑定列或其他系统对象,您需要动态sql
DECLARE @value varchar(10)
SET @value = 'intStep'
DECLARE @sqlText nvarchar(1000);
SET @sqlText = N'SELECT ' + @value + ' FROM dbo.tblBatchDetail'
Exec (@sqlText)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)