如何遍历select语句的多个值并使用存储过程中的这些值执行某些操作?

时间:2011-08-31 06:20:06

标签: sql sql-server sql-server-2008 stored-procedures

我有一个名为'SalaryHead'的表,其中包含近10个名为Basic,PF,HRA,ESI,IncomeTax等的工资头。 select语句检索特定Employee的SalaryHeads Specific。

现在我想循环工资头和执行计算。工资头基本是表中存在的直接值。从基本我必须计算其他工资头。例如HRA是基本的20%,PF是像这样一个工资头的HRA的10%是根据其他工资头计算的。

现在我想写一个包含每个薪水Head的计算的SP。但是当我将工资头限制在特定的employeeid(将作为参数传递)时。必须计算这些工资负责人并将其总结为总额。

使用存储过程执行此操作的最佳方法是什么?前端编码是不可取的。

1 个答案:

答案 0 :(得分:0)

你能使用WHILE循环吗?

WHILE (SELECT COUNT(*) FROM SalaryHead WHERE Total IS NULL AND EmployeeID = @EmpID) > 0
BEGIN

  /*Calculate Salary Head */

END