Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So erhalten Sie einen Wert nach dynamischem Feldnamen mit einer SQL-Auswahlabfrage

Ich denke, was Sie eigentlich suchen, ist das Folgende:

DECLARE @ColumnName sysname, @Id int;
SET @Id = 29;
SET @ColumnName = N'Age';

DECLARE @SQL nvarchar(MAX);
SET @SQL = N'SELECT ' + QUOTENAME(@ColumnName) + N' FROM dbo.Table_CandidateInfo WHERE Id = @Id;';
--PRINT @SQL; --Your debugging friend
EXEC sp_executesql @SQL, N'@Id int', @Id = @Id;