【发布时间】:2017-09-01 16:54:40
【问题描述】:
这是我尝试做的简化版本,但假设我想选择其经理在给定部门的所有员工。我可以有如下 SQL 查询:
SELECT employees.id
FROM employees
WHERE employees.manager IN (SELECT managers.id
FROM managers
WHERE managers.dept = 12)
;
但是假设我想将管理器子查询抽象为 PL/SQL 子程序。我该怎么做?
我使用过的存储过程(主要由其他开发人员编写)往往具有由 PHP 调用代码映射到 PHP 数组的参数。我真的没有任何从另一个调用一个存储过程的经验。
我想做的是有这样的东西:
SELECT employees.id
FROM employees
WHERE employees.manager IN my_stored_procedure(12)
;
然后my_stored_procedure 将为输入参数输出一组经理 ID(在本例中为 12)。
【问题讨论】:
-
是过程还是函数(我认为是函数)
标签: sql oracle stored-procedures plsql