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

Eu preciso passar os nomes das colunas usando a variável na instrução select no Store Procedure, mas não posso usar a consulta dinâmica


Uma maneira de fazer isso sem usar sql dinâmico é usar a instrução CASE

Mas isso é feio
SELECT EPV.EmployeeCode, case @RateOfEmployee  when 'RateOfEmployee' then RateOfEmployee
when 'X' then X 
..
end , case @RateOfEmployer  when 'RateOfEmployer' then RateOfEmployer
when 'Y' then Y
..
end 
FROM [HR_EmployeeProvisions] EPV

Você tem que verificar todas as colunas em CASE demonstração.