接受输入游标和 return curson 的 Oracle 函数或过程

Oracle function or procedure to accept input cursor and return curson

我想编写一个过程或函数,它接受具有员工 ID 的游标并循环遍历它。如果员工 ID 在薪水 table 中有任何薪水,它应该 return 0 否则薪水。最后将输出作为数字或游标发送。可以吗?

DECLARE
salary_check INTEGER;
CURSOR c1
IS
SELECT employee_id FROM employee_table;
BEGIN
FOR emp_rec in c1
LOOP
  BEGIN
  SELECT salary
  INTO salary_check
  WHERE employee_id = emp_rec.employee_id; --or however you link salary to emp_id
  EXCEPTION WHEN NO_DATA_FOUND
   salary_check := 0;
  END;

  --do something with the employee salary before looping to the next employee
END LOOP;
END;

这应该是您要使用的骨骼,由于您的详细信息稀疏,无法帮助您解决更具体的问题。