Oracle中如何写带条件的查询存储过程并返回查询结果集

2025-02-19 22:31:00
推荐回答(3个)
回答1:

create or replace procedure p_cnt(
p_time in varchar2,---查询的条件
p_cur out SYS_REFCURSOR)---游标返回

IS
v_sql varchar2(1000) :='';
v_date varchar2(20);

BEGIN
v_date := replace(p_time, '-', '');---时间的格式转换
v_sql := 'select * from dapartment d where d.d_time ='''|| v_date||'''';
END;
OPEN p_cur FOR v_sql;

END p_cnt;

回答2:

太基础了吧,创建带参存储过程,执行一条查询语句,在应用程序中接收查询结果。

回答3:

create or replace procedure proc_xx(v_sno out varchar2) is

begin
select a.sno into v_sno from t_student a,t_score b where a.sno=b.sno group by a.sno,a.sd having count(b.cno)>5;

end proc_xx;