Analytical SQL - SUM with Partition By

Welcome to the second post on the series Analytical SQL

In the first post we studied Analytical Function without Window Clause. With this post, we will learn Partition By

Analytical functions compute an aggregated value based on a group of rows defined as per Partition By clause, which determines the range of rows used to perform the calculations. 

In last post, we calculated TOTAL SAL in EMP table against each row, using

select d.deptno, d.dname, empno, ename, 
sum(sal) over() total
from emp e, dept d
where e.deptno = d.deptno;

Now, I want to modify TOTAL SAL to DEPARTMENT TOTAL SAL, i.e. calculate total salary of the department against department of each particular row.
SQL> select d.deptno, d.dname, empno, ename, sal,
  2  sum(sal) over(partition by d.dname) total
  3  from emp e, dept d
  4  where e.deptno = d.deptno;

    DEPTNO DNAME               EMPNO ENAME             SAL      TOTAL
---------- -------------- ---------- ---------- ---------- ----------
        10 ACCOUNTING           7839 KING          5000.15     8750.6
        10 ACCOUNTING           7934 MILLER           1300     8750.6
        10 ACCOUNTING           7782 CLARK         2450.45     8750.6
        20 RESEARCH             7566 JONES          2975.5   10877.41
        20 RESEARCH             7788 SCOTT         3000.55   10877.41
        20 RESEARCH             7902 FORD           3000.6   10877.41
        20 RESEARCH             7369 SMITH          800.75   10877.41
        20 RESEARCH             7876 ADAMS         1100.01   10877.41
        30 SALES                7521 WARD             1250    9403.19
        30 SALES                7654 MARTIN        1250.05    9403.19
        30 SALES                7844 TURNER        1500.95    9403.19
        30 SALES                7900 JAMES          950.99    9403.19
        30 SALES                7499 ALLEN          1600.9    9403.19
        30 SALES                7698 BLAKE          2850.3    9403.19
If you want to achieve above output without Analytical Function, you can also try
select d.deptno, d.dname, empno, ename, sal, total
from emp e, dept d,
(select sum(sal) total, deptno from emp group by deptno) t
where d.deptno = e.deptno
and d.deptno = t.deptno
order by 1;
 

18 comments:

  1. Best oral cleanliness is critical to keep teeth and gums sound. This incorporates propensities, for example, brushing double a day and standard dental check-ups, and many tips. Individuals can forestall these issues with appropriate dental consideration at home and the dental specialist's facility. Here are a portion of the 9 Best Tips For Healthy Teeth to keep teeth and gums solid.
    happy teeth
    tartar breaking off back of teeth

    ReplyDelete
  2. This is the one of the most important information for me. And I am feeling glad reading your article. The article is really excellent ?

    BCom Time Table - B.Com Part 1 2 3 Ka Date Sheet 2022
    B.Com 1st Year Time Table 2022
    B.Com 2nd Year Time Table 2022
    B.Com 3rd Year Time Table 2022

    ReplyDelete
  3. รองรับทุกการเดิมพัน ไม่ว่าจะผ่านธนาคารPG SLOT หรือวอลเล็ต เล่นได้ผ่านเว็บไซต์ PGSLOTGAMES เดิมพันด้วยเงินเดิมพันเริ่มต้นเพียง 1 บาท อีกทั้งยังสามารถที่จะรับรางวัลแจ็กพ็อตได้ก่อนใคร กับโปรโมชั่นอันมากมาย สะดวกทุกการเดิมพัน เล่นได้ 24 ชั่วโมง

    ReplyDelete
  4. เลือกเล่นได้ดั่งใจ PG SLOT กับเว็บเกมสล็อตที่มีให้เลือกอย่างหลากหลาย ไม่ว่าจะเป็นสล็อตออนไลน์ คาสิโนออนไลน์ อาเขต และยิงปลา ทำกำไรได้อย่างง่ายดาย ตลอด 24 ชั่วโมง ผ่านเว็บไซต์ PGSLOTGAMES เพียงทำการสมัครสมาชิกใหม่ ก็สามารถเล่นได้เลยกว่า 300เกม

    ReplyDelete
  5. PG SLOT online slots game https://pgslot-games.co/ Sign up for a new account, get a 100% bonus, 1st place

    PG SLOT online slots game https://pgslot-games.com/ Sign up for a new account, get a 100% bonus, 1st place

    Mega Game Online Slot Game https://megagame.vegas/ The newest website 2021, the number 1 slot website

    ReplyDelete
  6. Nice Information, your blog is sharing unique information...

    ReplyDelete
  7. Organic Fruits and Vegetables in Delhi, Gurgaon, and Noida. The word "organic" means the way farmers grow and process farming (agricultural) products.
    organic fruits and vegetables

    ReplyDelete
  8. Pulprolls is one of the leading 80x80 80x70 7950 7925 POS Thermal Paper Toll Rolls Exporter in India. Visit our website for more information.
    80x80 80x70 7950 7925 POS Thermal Paper Toll Rolls Exporter

    ReplyDelete
  9. RP Paper Impex is one of the leading Thermal Paper POS Billing Rolls 80 x 80, 80 x 70, 7950, 7925, 5725, 5715 Manufacturer in India. Visit our website for more information.
    Thermal Paper POS Billing Rolls 80 x 80, 80 x 70, 7950, 7925, 5725, 5715 Manufacturer

    ReplyDelete
  10. Amazing blog, thanks for sharing such an amazing information with us. Deysphotography is a leading Pre-wedding Photographer in Delhi NCR, Noida, and Gurgaon. Visit our website for more information in details.
    Pre-wedding Photographer in Delhi NCR

    ReplyDelete
  11. Vietnam Eximp is a leading Import Export Trade Data provider for 100+ countries like usa, Russia, united kingdom, Singapore and more. For more information in details visit our website.
    Vietnam Import Export Data

    ReplyDelete
  12. This comment has been removed by the author.

    ReplyDelete
  13. This comment has been removed by the author.

    ReplyDelete
  14. This comment has been removed by the author.

    ReplyDelete
  15. บริษัท slot pg จะเล่นเกมไหน ก็สนุกสนานสุดสนุก และรับเงินรางวัล PGSLOT ในเกมมาก สล็อตเว็บไซต์ตรง เปิดให้บริการ พร้อมเกมสล็อต ที่จะทำให้ท่าน รับเงินรางวัลมั่นใจ เกมใหม่พลาด

    ReplyDelete