oracle - 用于内部连接和 where 子句的 PL/SQL 过程
问题描述
我想为以下查询创建 PL/SQL 存储过程:
SELECT order_id, order_date, customer_id
FROM Orders
INNER JOIN Customers ON Orders.customer_id = Customers.customer_id
WHERE order_id = xyz;
我想order_id
在存储过程中作为输入参数传递。有人可以为此分享PL/SQL代码吗?
解决方案
返回这些值的过程的最简单形式是这样的(:
create or replace procedure retrieve_order_values(
p_order_id IN Orders.order_id%type
, p_order_date OUT Orders.order_date%type
, p_customer_id OUT Orders.customer_id%type
)
is
begin
select order_date, customer_id
into p_order_date, p_customer_id
from orders
where order_id = p_order_id;
end retrieve_order_values;
请注意,您不需要加入Customers
表来检索 customer_id。
推荐阅读
- python - 在字典循环中枚举需要很长时间如何提高速度
- inheritance - Kotlin 域类转换为子类
- javascript - 如何使用本地存储记住输入值?
- driver - 可以在空手道司机上传/下载文件吗?
- python - 如何更改图像尺寸的顺序
- javascript - 尝试在 a 上执行 getElementById
- 我在函数中创建的,返回 null
- bootstrap-4 - 关于 Bootstrap 4 类“.dual-collapse2”的信息
- javascript - Angular - 动态操作过滤条件
- python - 在创建用户的同时创建配置文件
- android - Symbol$CompletionFailure:找不到 ActivityDeparturesBinding 的类文件