为了账号安全,请及时绑定邮箱和手机立即绑定

Oracle数据库开发必备利器之PL/SQL基础

难度初级
时长 3小时22分
学习人数
综合评分9.57
114人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.5 逻辑清晰
select a.deptno ,
sum(case when sal<3000 then 1 else 0 end) ,
sum(case when sal<=6000 and sal>=3000 then 1 else 0 end) ,
sum(case when sal>6000 then 1 else 0 end) ,
nvl(sum(sal),0)
from dept a, emp b
where a.deptno = b.deptno(+)
group by a.deptno
order by a.deptno;
declare
cursor cur is select empno,sal from emp order by sal;
pempno emp.empno%type;
psal emp.sal%type;
cnt number :=0;
acc emp.sal%type;
begin
select sum(sal) into acc from emp;
open cur;
loop
exit when acc>50000;
fetch cur into pempno,psal;
exit when cur%notfound;
if acc+psal*0.1<=50000 then
update emp set sal = sal*1.1 where empno=pempno;
cnt := cnt+1;
acc := acc+psal*0.1;
end if;
end loop;
dbms_output.put_line(cnt ||' '||acc);
close cur;
end;
/

已采纳回答 / 昕牌肉猫
自己的亲身经历:win10 64bit,装了11.2g的Oracle 64bit,无论怎么调(下载64bit的SQL developer也没用),都无法调通SQL developer,感觉是32与64之间的兼容问题。win7 32bit,装了11.2g的Oracle 32bit,很轻松就用上了SQL developer(注意要选一下java的位置,在Oracle目录里的一个jdk的文件夹里面找)。我使用PL/SQL developer客户端学习的这门课程,除了一些命令不能用(如accept、servero...
如果是在pl/sql developer中编译的话,只能在sql窗口中:
DECLARE
pnum number:= #
BEGIN
if pnum = 0 then
dbms_output.put_line('数字是0');
elsif pnum = 1 then
dbms_output.put_line('数字是1');
elsif pnum = 2 then
……
请忽略accept命令,不支持。set serveroutput on也不支持。
换成html5播放,可以加快语速,节省时间有能集中精神听,感觉学习效率更好!
set serveroutput on
accept num prompt '请输入数字';
declare
pnum number:=#
begin
if pnum = 0 then dbms_output.put_line('输入了0');
elsif pnum = 1 then dbms_output.put_line('输入了1');
elsif pnum = 2 then dbms_output.put_line('输入了2');
else dbms_output.put_line('输入了其他数字');
end if;
end;
/
不错不错,浅显易懂哈哈

最新回答 / 蒲公英0910
group by后面要加变量名,会造成每个值的数量统计,而不能按照变量值区间分段统计

最新回答 / 慕妹5780192
我的SQLdevelop 根本就无法连接,没法用
很好的讲解,老板推荐要学习的
课程须知
亲,要学习本门课程只需要熟练使用Oracle的SQL语句就可以了,可以参考慕课网的课程《Oracle数据库开发必备利器之SQL基础》呦!
老师告诉你能学到什么?
1、能够熟练掌握PL/SQL的基本语法 2、能够熟练使用光标和例外 3、能够熟练使用PL/SQL进行开发

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消