본문 바로가기

오라클

오라클 SUM OVER() : 조건에 만족하는 행의 합 구하기

-- SUM OVER()

        -- 조건에 만족하는 행의 합 구하기

        SELECT buseo,

        SUM(basicpay) FROM insa GROUP BY buseo;

=> 집계함수 SUM()만 사용해서 각 부서별 기본급 합을 구함

        

        SELECT name, buseo, basicpay,

        SUM(basicpay) OVER(ORDER BY buseo) FROM insa;

=> 각 부서에 맞는 각부서의 총합을 각 행마다 출력 함

     

        SELECT name, buseo,jikwi,basicpay,

          SUM(basicpay) OVER(ORDER By buseo, jikwi),

          SUM(basicpay) OVER(PARTITION BY buseo ORDER BY jikwi)

        FROM insa;

        

        --AVG OVER()

          --SUM OVER()와 똑같은 원리로 조건에 만족하는 행의 평균 구하기

         SELECT name, buseo,jikwi,basicpay,

          TRUNC(SUM(basicpay) OVER(ORDER By buseo, jikwi)),

          TRUNC(SUM(basicpay) OVER(PARTITION BY buseo ORDER BY jikwi))

        FROM insa;