Oracle SQL 数组变量循环执行语句 - 员工姓名和工资示例
假设需要查询员工表中所有部门编号为10的员工的姓名,并将结果赋值给数组变量'emp_names'。然后遍历数组变量,循环输出每个员工的姓名和工资。可以使用以下SQL:
DECLARE
TYPE emp_name_type IS TABLE OF employees.last_name%TYPE INDEX BY BINARY_INTEGER;
emp_names emp_name_type;
i INTEGER;
BEGIN
-- 查询所有部门编号为10的员工的姓名
SELECT last_name BULK COLLECT INTO emp_names FROM employees WHERE department_id = 10;
-- 遍历数组变量,循环输出每个员工的姓名和工资
FOR i IN 1..emp_names.COUNT LOOP
dbms_output.put_line(emp_names(i));
dbms_output.put_line('Salary: ' || to_char(get_salary(emp_names(i))));
END LOOP;
END;
其中,'get_salary(emp_name)'是一个自定义函数,用于查询某个员工的工资。
原文地址: https://www.cveoy.top/t/topic/nChL 著作权归作者所有。请勿转载和采集!