Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Трябва да предам имена на колони, използвайки променлива в оператора за избор в процедурата на магазин, но не мога да използвам динамична заявка

Един от начините да направите това без използване на динамичен sql е използването на оператор CASE

Но това е грозно

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

Трябва да проверите всички колони в CASE изявление.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 7 начина за намиране на дублиращи се редове в SQL Server, като игнорирате първичен ключ

  2. Как мога да изчистя кеша на заявките на SQL Server?

  3. Дефиниране на връзка един към един в SQL Server

  4. Най-добрият подход за премахване на времева част от дата и час в SQL Server

  5. SQL Server:Възможно ли е да се вмъкнат в две таблици едновременно?