DS가 되기 위한 여정 👩‍💻

Data Science/SQL

[Elice sql] as 뒤에는 () 사용 X

Tashapark 2025. 3. 10. 21:32
728x90
반응형

 

- 집계함수로.. sum을 잘 모르겠음.. 

 

수정 전 

-- 2. SUM 집계 함수를 이용하여, 판매자 이름, 상품 ID 별 판매 금액을 구하는 쿼리를 작성하세요.
SELECT S.SELL_ID, S.SELLER_NAME, P.PRODUCT_NAME, S.QUANTITY,
        SUM(PRICE * QUANTITY) OVER( PARTITION BY SELLER_NAME, PRODUCT_ID) AS (PRICE * QUANTITY)
FROM PRODUCT P
JOIN SELL S ON S.PRODUCT_ID = P.PRODUCT_ID
ORDER BY P.PRODUCT_ID;

- as 뒤에는 () 사용 X

 

수정 후

-- 2. SUM 집계 함수를 이용하여, 판매자 이름, 상품 ID 별 판매 금액을 구하는 쿼리를 작성하세요.
SELECT S.SELL_ID, S.SELLER_NAME, P.PRODUCT_NAME, S.QUANTITY,
        SUM(PRICE * QUANTITY) OVER( PARTITION BY S.SELLER_NAME, S.PRODUCT_ID) AS SUM_PRICE -- 그냥 여기에 계산식을 넣어서 그런가봄
FROM PRODUCT P
JOIN SELL S ON (S.PRODUCT_ID = P.PRODUCT_ID)
ORDER BY S.SELL_ID; -- order by 기준도 잘못되었었고

 

++ 이런 문제는 그냥 group by를 쓰는 것이 더 낫다고 함. 

SELECT S.SELLER_NAME, S.PRODUCT_ID, P.PRODUCT_NAME, 
       SUM(P.PRICE * S.QUANTITY) AS TOTAL_PRICE
FROM PRODUCT P
JOIN SELL S ON S.PRODUCT_ID = P.PRODUCT_ID
GROUP BY S.SELLER_NAME, S.PRODUCT_ID, P.PRODUCT_NAME
ORDER BY S.PRODUCT_ID;

 

728x90
반응형