Data Densification
Example1:
Example1:
SELECT deptno, COUNT(*) DEPT_COUNT FROM emp WHERE deptno IN (20, 30) GROUP BY deptno; DEPTNO DEPT_COUNT ---------------------- ---------------------- 20 5 30 6
The above query returns departments and their employee count, what if we want to
repeat the count for all employees of corresponding dept's.
SELECT empno, deptno, COUNT(*) OVER (PARTITION BY deptno) DEPT_COUNT FROM emp WHERE deptno IN (20, 30); EMPNO DEPTNO DEPT_COUNT ---------- ---------- ---------- 7369 20 5 7566 20 5 7788 20 5 7902 20 5 7876 20 5 7499 30 6 7900 30 6 7844 30 6 7698 30 6 7654 30 6 7521 30 6Example2:
We had a requirement where in even if the data has gaps the report should be continuous , regardless of presence of data. There are two tables below.
Expected Output:
Query:
select Pen_NAme,Time_id,nvl(sum(quantity),0) from temp ym
LEFT OUTER JOIN
Gags co PARTITION BY (co.pen_name)
ON (co.procurement = ym.time_id)
group by Pen_NAme,Time_id;
No comments:
Post a Comment