189 8069 5689

oracle怎么遍历判断 oracle遍历查询结果集

oracle如何实现遍历查询?

declare

创新互联公司专业网站制作、成都做网站,集网站策划、网站设计、网站制作于一体,网站seo、网站优化、网站营销、软文推广等专业人才根据搜索规律编程设计,让网站在运行后,在搜索中有好的表现,专业设计制作为您带来效益的网站!让网站建设为您创造效益。

teacher_name varchar(20)------------跟teacher表中老师名字类型保持一致

cursor t_name is select teachername from teacher---------申明游标t_name为从teacher表中查询老师名字

begin

open t_name;------打开游标t_name

loop-------开始循环(遍历)

fetch t_name into teacher_name-------将老师名字值赋予变量teacher_name

if t_name%found-------------开始遍历有值时插入以下数据

then

select name,count(*) into new_table

from table_teacher_student

where name=teacher_name group by name-----将一个老师名字依据条件插入新表数据

else

dmbs_output.put_line(‘完成所有工作’);---------遍历结束时输出完成工作

exit;

end if;

end loop;

仓促写下以上内容,可能部分语法报错,思路就是这样,很基本的一个游标使用。

oracle存储过程遍历游标问题

第二段代码是对的,

第一段代码是错的,你有没有发现,你第一段代码 的两条,后一条 应该是空值

还没有 fetch ,不应该判断 cur%notfound;

在fetch后,才应该判断 cur%notfound;

看看你的第一段代码:

open cur;

loop

exit when cur%notfound;

fetch cur into pname,pjob,psal;

dbms_output.put_line(pname||'的工作是'||pjob||',薪水是'||psal);

end loop;

close cur;

-- 第一轮循环, fetch到值, 进行输出

-- 第二轮循环,判断第一轮循环是否取到值; 然后fetch, 此时如果没有值, 你仍然进行输出

-- 第三轮循环,判断第二轮循环是否取到值,没有值,退出

其实你只要一行值符合要求

oracle中如何根据表中一个字段遍历数据

写个for循环就可以遍历一遍,例如meminfo 表中有member_id 你现在有的id需要在meminfo 中查询出现次数

declare

i number(5);

id number(15);

begin

for rec in(select member_id from meminfo) loop

if member_id=id

then i:=i+1;

end if;

end;

这样就会遍历一遍你的这个数据库


当前名称:oracle怎么遍历判断 oracle遍历查询结果集
转载注明:http://cdxtjz.com/article/doooocg.html

其他资讯