求一条oracle存储过程 急!

Jay_xiaolei 2010-07-27 10:57:27
将各个职位前3位的职员的姓名,工资,成绩,名次存到一个数据表GOOD中
(1)、程序代码:
(2)、查询执行结果
用到的是oracle中的scott用户下的emp表,用游标解决
...全文
140 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jay_xiaolei 2010-07-28
  • 打赏
  • 举报
回复
算了没人回答就结贴了
iqlife 2010-07-27
  • 打赏
  • 举报
回复
自己会写?先写写,大家再帮你改改...
cosio 2010-07-27
  • 打赏
  • 举报
回复
是要学习写游标?
hyl04 2010-07-27
  • 打赏
  • 举报
回复
如果知道sql的话,这个存储过程是很简单的!
Jay_xiaolei 2010-07-27
  • 打赏
  • 举报
回复
我也不知道,题目就是这样的。
我想不需要按什么排序,直接从查到结果中取前三位
chen_araul 2010-07-27
  • 打赏
  • 举报
回复
就是不清楚你按什么排列?不然用游标这个过程挺简单的
iqlife 2010-07-27
  • 打赏
  • 举报
回复
前3位的职员的姓名,工资,成绩,名次???
EMP表只有姓名,工资.成绩是什么含义?名次是指按工资排第几?
Jay_xiaolei 2010-07-27
  • 打赏
  • 举报
回复
Create or replace procedure p_showinfo
As
V_sql varchar2(300);
V_name emp.姓名%type;
V_salary emp.工资%type;
V_score emp.成绩%type;
V_rank emp.名次%type;
V_position emp.职位%type;
Declare
Begin
Course cour as
Select distinct 职位 from emp;
For v_position in cour loop
Select 姓名 into v_name,工资 into v_salary,成绩 into v_score,名次 into v_rank from emp where 职位=v_position and rownum<4;
v_sql :=’insert into good values(v_name,v_salary,v_score,v_rank)’;
execute immediate v_sql;
End loop;
End;
我没有按照oracle中emp表的字段写,我对oracle一点都不熟,对sql也不熟悉

3,494

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧