Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment obtenir une valeur par nom de champ dynamique à l'aide d'une requête sql select

Je pense que ce que vous recherchez réellement est ce qui suit :

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;