【发布时间】:2021-12-03 23:46:28
【问题描述】:
我读过一些关于在 PL/SQL 中声明和使用变量的文章。而且我只在其他版本 (TSQL) 或代码语言中这样做过。
下面是我想要做的,就是
- 声明一个变量
- 通过查询为该变量赋值
- 使用 #2 的后续结果 在另一个查询中。
我尝试了 Internet 上列出的其他方法,但在最终查询中调用变量时,我所做的一切似乎都不起作用。
声明和into 语句有效,但最后一个选择查询无效。
declare
Degr_term varchar2(20);
begin
select max(z.term)
INTO degr_term
from dwh.rpt_ersd_vw d
join dwh.dim_ers_term_vw z
on d.DIM_DEGR_ERS_TERM_SKEY = z.dim_ers_term_skey;
select * from ir_wip.stem_enr s where s.min_deg_term = degr_term;
end;
【问题讨论】:
-
不起作用真的不能帮助人们回答你的问题。 PL/SQL 代码块中的查询必须具有
INTO或必须声明为游标。代码(在您的问题中)是否编译?我的猜测是它没有。所以我认为你应该edit你的问题并发布你得到的编译错误。你试过阅读Database PL/SQL Language Reference吗? -
该方法应该可以正常工作,您只需要添加代码来处理第二个查询的输出。