create or replace
PROCEDURE PAID_REPORT
(
PAYMENT_STATUS IN VARCHAR2
) AS
linecount number(4);
linecounttwo number(4);
--animal varchar2 (12);
animaltype varchar2(12);
visitid number (6);
cursor vetCursor is
select pb_vet.vetid,visitid,lastname,firstname
from pb_visit,pb_vet
where pb_visit.vetid = pb_vet.vetid
and pb_visit.status = PAYMENT_STATUS
order by lastname, firstname;
vetRow vetCursor%rowtype;
cursor visitCursor is
select visitid,name,lastname,firstname
from pb_client,pb_animal,pb_visit
where pb_client.cliEntid=pb_animal.clientid
and pb_visit.animalid=pb_animal.animalid
and status = PAYMENT_STATUS;
visitRow visitCursor%rowtype;
BEGIN
linecounttwo:=0;
open visitCursor;
loop
fetch visitCursor
into visitRow;
exit when visitCursor%notfound;
linecounttwo:=linecounttwo+1;
end loop;
linecount:=0;
open vetCursor;
loop
fetch vetCursor
into vetRow;
exit when vetCursor%notfound;
dbms_output.put_line('Veterinarian ID: '||vetRow.vetid||' '||vetRow.lastname||','||vetRow.firstname);
linecount:=linecount+1;
end loop;
close vetCursor;
END PAID_REPORT;
它会打印出几行 VETID 信息我想做的是在每个 vetID 下,我想在另一个选择语句中使用这个 vetID 来搜索其他东西,比如 select ...from...where id=vetID
现在我已经按预期显示了两行 vetID,但我不知道如何使用它。我不知道我是否说清楚了,因为英语不是我的第一语言。所以我将使用一个简单的例子来展示我想要做什么。
班级编号:0001 英语
Student A 19
Student B 21
班级编号:0004 数学
Student A 19
Student B 21
就像我得到了 CLASS ID 的行,然后对于每个 CLASS ID,我想用它作为选择名称,年龄来自 Student where....... 和 ID = CLASSID; 问题是我不知道 CLASS ID 是什么..
谢谢你。任何帮助,将不胜感激。