pl/sql显示员工KING 和FORD 管理的员工姓名及其经理姓名。
时间: 2024-12-12 08:17:00 浏览: 12
在Oracle数据库中,PL/SQL是一种过程化语言,可以用于编写存储过程、触发器等。如果你有一个包含员工信息(如ID、姓名和经理ID)的表,比如`Employees`,你可以编写一个查询来获取KING和FORD管理的员工及其对应的经理姓名。这里是一个基本的示例:
```sql
DECLARE
CURSOR emp_cursor IS
SELECT E1.employee_name AS employee_name,
E2.employee_name AS manager_name
FROM Employees E1
JOIN Employees E2 ON E1.manager_id = E2.employee_id
WHERE E1.employee_name IN ('KING', 'FORD');
BEGIN
FOR rec IN emp_cursor LOOP
DBMS_OUTPUT.PUT_LINE('Employee: ' || rec.employee_name || ', Manager: ' || rec.manager_name);
END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('No employees found for King or Ford.');
END;
/
```
这个查询创建了一个游标`emp_cursor`,它遍历两个表,通过`manager_id`关联每个员工与其经理,并打印出结果。如果找不到匹配的员工,会捕获`NO_DATA_FOUND`异常并输出相应消息。
阅读全文