Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Построчная выдача отчета в файл
- CREATE OR REPLACE
- PROCEDURE report_sal_adjustment4 IS
- f utl_file.file_type;
- BEGIN
- f := utl_file.fopen ('REPORT_DIR', 'report.dat', 'W') ;
- FOR i IN (
- SELECT e.empno, e.hiredate, e.sal, dept.dname,
- CASE WHEN sal > avg_sal THEN 'Y' ELSE 'N'
- END status
- FROM (
- SELECT empno, hiredate, sal, deptno,
- AVG(sal) over ( PARTITION BY deptno ) AS avg_sal,
- MIN(sal) over ( PARTITION BY deptno ) AS min_sal
- FROM emp ) e, dept
- WHERE e.deptno = dept.deptno
- AND ABS(e.sal - e.avg_sal)/e.avg_sal > 0.10 )
- LOOP
- utl_file.put_line(f, i.empnol || i.hiredate || i.sal || i.dname || i.status);
- END LOOP;
- utl_file.fclose(f);
- END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement