今天第二次上传自己的作业,希望大家多多支持啊,多多指点错误和不足,谢谢!!!
– 1 ,复习DML语句,查询各部门的平均工资,从高到低排序,使用pl/sql输出在控制台
declare
begin
for x in (select t.dname,avg(e.sal) sal from emp e,dept t
where e.deptno=t.deptno
group by t.dname
order by avg(e.sal) desc)
loop
dbms_output.put_line (x.dname||’ '||x.sal);
end loop;
end;
/*2 ,使用PL/SQL写循环,插入10条记录到t_emp表,主键使用随机数.
因为随机数可能生成的数字相同,所以这里要判断,如果插入的主键已经存在,那么另外再生成一个主键.
生成随机数代码
SELECT DBMS_RANDOM.RANDOM FROM DUAL; --随机数
select trunc(dbms_random.value(0,100)) from dual --0-100范围内的随机数
*/
delete from t_emp;
select * from t_emp;
declare
v_xl number(10);-- 序列
v_count number(10);
i number(5):=0;
begin
v_s:=0;
WHILE i<=10 LOOP
v_xl:=trunc(dbms_random.value(0,100));-- 随机数
select count(*) into v_count from t_emp where tid=v_x