2011-08-01 3 views
2

내 쿼리에 대해 그룹을 합산해야합니다. 뭔가 같은 :mySQL에서 SUM을 어떻게 사용합니까?

SELECT customer_id, SUM(weekly) FROM earnings GROUP BY customer_id 

위의 작품,하지만 난 뭔가 좀 더 복잡한 필요하고, 나의 질의는 같다 : 매일 위의

SELECT 
    (SELECT SUM(weekly) FROM earnings) + 
    (SELECT SUM(day_earnings) FROM earnings)/.75 

모든 소득의 합계를 만들고, 매주 , 첫 번째 예제에서는 customer_id like까지 그룹화해야합니다. 이것을 어떻게 성취합니까?

답변

3

위에서 시도한 작업 순서에 따르면 으로 나눈 값은 SUM(day_earnings)입니다. 주간 & day_earnings이 합쳐져야한다면 (SUM(weekly) + SUM(day_earnings))/0.75 AS earnings으로 괄호를 붙이십시오.

SELECT 
    customer_id, 
    customer_name, 
    SUM(weekly) + SUM(day_earnings)/0.75 AS earnings 
FROM earnings JOIN customers ON earnings.customer_id = customers.customer_id 
GROUP BY customer_id, customer_name 
+0

감사합니다! 테이블 customer와 customer_id를 결합하여 이름을 얻으려면 어떻게해야합니까? 고맙습니다! – luqita

+1

위 변경 사항을 참조하십시오. 'customer_name'은 목록을 선택하고 목록별로 그룹을 추가하고 FROM –

+0

에 가입했습니다. 감사! 그러나 customer_id는 두 테이블에 존재하므로 테이블 앞에 필요합니다. 당신의 도움을 주셔서 감사합니다! – luqita

0

이 방법이 효과가 있습니까?

SELECT customer_id, SUM(weekly + (day_earnings/.75)) 
FROM earnings 
GROUP BY customer_id 
0
SELECT 
    customer_id, 
    SUM(weekly) weekly, 
    SUM(day_earnings) daily, 
    ((SUM(weekly) + SUM(day_earnings))/.75) calc 
FROM 
    earnings 
GROUP BY 
    customer_id 
0

당신은 할 수 없습니다 :

SELECT customer_id, (SUM(weekly) + SUM(day_earnings)/.75) AS earnSum FROM earnings GROUP BY customer_id 
관련 문제