2017-10-31 26 views
0

저는 MySQL을 초보자로 삼아 쿼리를 단순화하여 "2014 년까지 판매량이 얼마나 증가했는지 확인할 수 있습니다. 2015 ".MySQL - 하위 쿼리를 제거하고 단순화하는 방법 - 연도 별 매출 증가율을 계산합니다.

fiddle을 참조하십시오.

결과가 맞지만 많은 서브 쿼리를 사용했습니다. 팁 최적화하려면

SELECT s15.store_id, SUM(s15.sales)/SUM(s14.sales) - 1 
FROM STORE S15 INNER JOIN STORE S14 
    ON S15.store_id = S14.store_id 
WHERE S15.year = 2015 and s14.year = 2014 
GROUP BY S15.year, S14.year 

, PLS 알려 주시기 :

여기에 내 생각이다. Tnx.

답변

2

조건부 집계를 사용할 수 있으며 하나 group by :

SELECT store_id, 
     SUM(CASE WHEN YEAR(order_date) = 2014 THEN order_amount END) AS sell_2014, 
     SUM(CASE WHEN YEAR(order_date) = 2015 THEN order_amount END) AS sell_2015 
FROM Orders 
WHERE YEAR(order_date) IN (2014, 2015) 
GROUP BY store_id 

내가 당신까지 증가 속도에 대한 연산을 떠날거야.