Inflearn brand logo image

인프런 커뮤니티 질문&답변

알고리즘가즈앙님의 프로필 이미지
알고리즘가즈앙

작성한 질문수

데이터 분석 SQL Fundamentals

집계(Aggregate) Analytic SQL 실습 - 03

직원 별 가장 높은 매출

작성

·

85

0

14:38초 예제에서

직원별 개별 상품 매출액, 직원별로 가장 높은 매출 대비 개별 상품 매출 비율 구하기

with temp_01 as(

select

employee_id

,sum(amount)as sum_by_emp_prod --직원별 개별 상품 매출액

-- ,max (amount) as max_emp --직원 별 가장 높은 매출

from orders a

join order_items b

on a.order_id=b.order_id

group by employee_id

)

select sum_by_emp_prod

,sum_by_emp_prod/max(sum_by_emp_prod)over(partition by employee_id)

from temp_01;

 

  1. group by할때 왜 product_id도 group by하나요? 직원별 개별 상품인데 employee_id와 그룹바이 하면 되는거 아닌가여 ?

  2. 직원별로 가장 높은 매출을 max(sum_by_emp_prod)over(partition by employee_id) 이렇게 구하셧는데

with절에서 group by로 해서 with temp_01 as(

select

employee_id

,sum(amount)as sum_by_emp_prod --직원별 개별 상품 매출액

,max (amount) as max_emp --직원 별 가장 높은 매출

from orders a

join order_items b

on a.order_id=b.order_id

group by employee_id

)

이렇게 구하면 안되나여?

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

group by를 employee_id로 하게 되면 직원별 개별 상품 매출액이 아니라 직원별 매출액이 됩니다.

그래서 group by를 employee_id, product_id로 하였습니다.

알고리즘가즈앙님의 프로필 이미지
알고리즘가즈앙

작성한 질문수

질문하기